Aracılığıyla paylaş


Power Query SDK test çerçevesi bölüm 4 - Test biçimi belirtimi

Bu çok parçalı başvuru, Power Query bağlayıcısı geliştiricileri için standart bir test paketinin kurulumunu ve çalıştırılmasını kapsar. Başvuru, ortamınızın özel bağlayıcınızı test etmek üzere ayarlandığından emin olmak için sıralı olarak yapılması amaçlanır.

Ortamı ayarladığınıza, test verilerini yüklediğinize ve test paketini ayarladığınıza göre, uzantı bağlayıcınızı test paketiyle doğrulamaya başlamaya hazırsınız demektir. Testleri çalıştırmadan önce, test çerçevesi içinde farklı dosya ve biçim türlerini anlamanız gerekir.

Bu bölümde şunları yapacaksınız:

  • Test çerçevesi içinde kullanılan dosya biçimi türlerini ve bunların işlevlerini öğrenin

PQ/PQOut biçiminde testler için belirtim

Power Query SDK test çerçevesi ile uzantı bağlayıcılarını doğrulama testleri PQ/PQOut Biçiminde yazılır.

Aşağıdaki listede, Power Query SDK test çerçevesiyle çalışırken bilmeniz gereken dosya türleri açıklanmaktadır:

  • .query.pq uzantısına sahip, PQ dosyası olarak da bilinen sorgu dosyasını test edin.
  • .query.pqout uzantısına sahip, PQOut dosyası olarak da bilinen çıktı dosyası.
  • .parameterquery.pq uzantısına sahip isteğe bağlı parametre sorgu dosyası.
  • .settings uzantısına sahip isteğe bağlı ayarlar dosyası.
  • .diagnostics uzantısına sahip isteğe bağlı tanılama dosyası.

.query.pq uzantısıyla PQ dosyası olarak da bilinen test sorgusu dosyası

Test sorgusu dosyası (.query.pq) tek bir Power Query M formül dili sorgusu içerir. Karma sorgusu, özel bağlayıcı veri kaynağı işlev adına ve yürütülmesi gereken meta verilere sahip bir let ifade tarafından kapsüllenen değişkenlerden, ifadelerden ve değerlerden oluşur.

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

.query.pqout uzantısına sahip, PQOut dosyası olarak da bilinen çıktı dosyası

Çıkış dosyası (.query.pqout), bir test için compare komutunu çalıştırmanın sonucu olarak oluşturulan çıkışı içerir.

Aşağıdaki örnekte, snowflakeFirstNTests.query.pqout gibi bir çıkış dosyası (PQOut) örneği gösterilmektedir:

#table(type table [TIMESTAMP = datetime], {{#datetime(2014, 1, 1, 16, 0, 0.12345)}})

.parameterquery.pq uzantısına sahip isteğe bağlı parametre sorgu dosyası

Test çalışmalarının veri kaynağından bağımsız olarak çalıştırılmasını sağlamak için PQ/test sorgu dosyası desteği iki bölüme ayrılabilir: parametre sorgu dosyası ve test sorgusu dosyası.

Parametre sorgusu veri kaynağına özgüdür ve test verilerini veri kaynağından alır. Testleri başka bir bağlayıcı için çalıştırmak istiyorsanız, bu dosyayı ilgili veri kaynağına işaret edecek şekilde güncelleştirmeniz gerekir.

Aşağıdaki örnekte taxi.parameterquery.pq gibi bir parametre sorgu dosyası örneği gösterilmektedir:

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

İsteğe bağlı parametre sorgu dosyası sağlandığında, test sorgusunun yalnızca test verilerine dönüştürmeleri içermesi gerekir. Bu dönüştürmeler, testler için gereken M ifadeleridir ve bunu veri kaynağından bağımsız hale getirir. Test sorgusunun daha sonra parametre sorgusundan sonuçları alan ve giriş sonuçlarında test mantığını çalıştıran bir M lambda işlevi bildirmesi gerekir.

Aşağıdaki örnekte test sorgusu örneği gösterilmektedir; örneğin, SnowflakeFirstNTest.query.pq:

(parameter) => 
let
   SelectColumns = Table.SelectColumns(parameter, {"lpep_pickup_datetime"}),
   FirstN = Table.FirstN(SelectColumns, 1)
in
   FirstN

.settings uzantısına sahip isteğe bağlı ayarlar dosyası

İsteğe bağlı ayarlar dosyası, yapılandırma parametrelerini anahtar değer çiftleri olarak içeren bir JSON dosyasıdır.

Aşağıdaki örnekte, isteğe bağlı parametre sorgu dosyası belirtildiğinde bir ayarlar dosyası örneği gösterilmektedir:

{
    'Extension': 'snowflake.mez',
    'ParameterQueryFilePath': 'contoso.parameterquery.pq'
    'QueryFilePath': 'contoso.query.pq',
    'FailOnMissingOutputFile': true
}

.diagnostics uzantısına sahip isteğe bağlı tanılama dosyası

İsteğe bağlı tanılama dosyası şu anda M Sorgusu katlandığında oluşturulan komut metninin listesini içerir. Sorguyu katlama regresyon testi için kullanın.

Aşağıdaki örnekte snowflakeFirstNTest Ayarlar.diagnostics gibi bir tanılama dosyası örneği gösterilmektedir:

[
  {
    "Command": "select \"lpep_pickup_datetime\" from \"NYCTAXIDB\".\"PUBLIC\".\"NYCTAXIDATA\" LIMIT 1 OFFSET 0"
  }
]

Sonuç

Bu bölümde, Power Query SDK test çerçevesiyle çalışırken tanımanız gereken çeşitli dosya biçimleri tanıtıldı.

Sonraki bölümde, uzantı bağlayıcınızın veri kaynağıyla çalışmak üzere sorgular ve ayarlar oluşturacaksınız.

Sonraki adımlar

Power Query SDK test çerçevesi bölüm 5 - Uzantı bağlayıcınızı test etme