Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta referência com várias partes aborda a configuração e a execução de um conjunto padrão de testes para desenvolvedores do conector do Power Query. A referência deve ser seguida em sequência para garantir que o ambiente seja configurado para o teste do conector personalizado.
Agora que você configurou o ambiente, carregou os dados de teste e configurou o conjunto de testes, está pronto para começar a verificar seu conector de extensão com o conjunto de testes. Antes de executar os testes, você precisa entender diferentes tipos de arquivos e formatos dentro da estrutura de teste.
Nesta seção, você vai:
- Aprender os tipos de formatos de arquivo usados na estrutura de teste e sua funcionalidade
Especificação para testes no formato PQ/PQOut
Os testes para a verificação dos conectores de extensão com a estrutura de teste do SDK do Power Query são escritos no formato PQ/PQOut.
A lista a seguir descreve os tipos de arquivos que você conhecer para trabalhar com a estrutura de teste do SDK do Power Query:
- Arquivo de consulta de teste, também conhecido como arquivo PQ, com uma extensão .query.pq.
- Arquivo de saída, também conhecido como arquivo PQOut, com uma extensão .query.pqout.
- Arquivo de consulta de parâmetro opcional com uma extensão .parameterquery.pq.
- Arquivo de configurações opcionais com uma extensão .settings.
- Arquivo de diagnóstico opcional com uma extensão .diagnostics.
Arquivo de consulta de teste, também conhecido como arquivo PQ, com uma extensão .query.pq
O arquivo de consulta de teste (.query.pq) contém uma única consulta de linguagem de fórmula do Power Query M. A consulta de mashup é composta de variáveis, expressões e valores encapsulados por uma expressão let com o nome da função da fonte de dados do conector personalizado e os metadados necessários para execução.
let
Source = Snowflake.Databases("POWERBI.snowflakecomputing.com", "DEMO_WH"),
Database = Source{[Name="NYCTAXIDB”, Kind="Database"]}[Data],
Schema = Database{[Name="PUBLIC”, Kind="Schema"]}[Data],
Table = Schema{[Name="NYCTAXIDATA”, Kind="Table"]}[Data],
SelectColumns = Table.SelectColumns(Table, {"lpep_pickup_datetime"}),
FirstN = Table.FirstN(SelectColumns, 1)
in
FirstN
Arquivo de saída, também conhecido como arquivo PQOut, com uma extensão .query.pqout
O arquivo de saída (.query.pqout) contém a saída gerada como resultado da execução do comando compare para um teste.
O exemplo a seguir mostra um exemplo de um arquivo de saída (PQOut), por exemplo, SnowflakeFirstNTests.query.pqout:
#table(type table [TIMESTAMP = datetime], {{#datetime(2014, 1, 1, 16, 0, 0.12345)}})
Arquivo de consulta de parâmetro opcional com uma extensão .parameterquery.pq
Para que os casos de teste sejam executados independentemente da fonte de dados, o suporte para o arquivo de consulta PQ/test pode ser dividido em duas partes: o arquivo de consulta de parâmetro e o arquivo de consulta de teste.
A consulta de parâmetro é específica da fonte de dados e recupera os dados de teste da fonte de dados. Para executar os testes para outro conector, é necessário atualizar esse arquivo para que aponte para essa fonte de dados específica.
O exemplo a seguir mostra um exemplo de um arquivo de consulta de parâmetro, por exemplo, Taxi.parameterquery.pq:
let
Source = Snowflake.Databases("POWERBI.snowflakecomputing.com", "DEMO_WH"),
Database = Source{[Name="NYCTAXIDB", Kind="Database"]}[Data],
Schema = Database{[Name="PUBLIC", Kind="Schema"]}[Data],
Table = Schema{[Name="NYCTAXIDATA", Kind="Table"]}[Data],
in
Table
Quando o arquivo de consulta de parâmetro opcional é fornecido, a consulta de teste precisa conter somente transformações nos dados de teste. Essas transformações são as expressões M necessárias para os testes e os tornam independentes da fonte de dados. A consulta de teste também precisa declarar uma função lambda M que obtém os resultados da consulta de parâmetro e executa a lógica de teste nos resultados de entrada.
O exemplo a seguir mostra um exemplo de uma consulta de teste, por exemplo, SnowflakeFirstNTest.query.pq:
(parameter) =>
let
SelectColumns = Table.SelectColumns(parameter, {"lpep_pickup_datetime"}),
FirstN = Table.FirstN(SelectColumns, 1)
in
FirstN
Arquivo de configurações opcionais com uma extensão .settings
O arquivo de configurações opcionais é um arquivo JSON, que contém os parâmetros de configuração como pares chave-valor.
O exemplo a seguir mostra um exemplo para um arquivo de configurações quando o arquivo de consulta de parâmetro opcional é especificado:
{
'Extension': 'snowflake.mez',
'ParameterQueryFilePath': 'contoso.parameterquery.pq'
'QueryFilePath': 'contoso.query.pq',
'FailOnMissingOutputFile': true
}
Arquivo de diagnóstico opcional com uma extensão .diagnostics
O arquivo de diagnóstico opcional atualmente contém uma lista de texto de comando gerada quando uma consulta M é dobrada. Use-o para testes de regressão de dobragem de consultas.
O exemplo a seguir mostra um exemplo para um arquivo de diagnóstico, por exemplo, SnowflakeFirstNTestSettings.diagnostics:
[
{
"Command": "select \"lpep_pickup_datetime\" from \"NYCTAXIDB\".\"PUBLIC\".\"NYCTAXIDATA\" LIMIT 1 OFFSET 0"
}
]
Conclusão
Esta seção apresentou vários formatos de arquivo que você precisa conhecer ao trabalhar com a estrutura de teste do SDK do Power Query.
Na próxima seção, você criará consultas e configurações para trabalhar com a fonte de dados para o conector de extensão.
Próximas etapas
Estrutura de teste do SDK do Power Query, parte 5 – Testar o conector de extensão