Co je to Test Data?<\/H1>Jednoduše řečeno, testovací data se používají k řízení výkonového nebo zátěžového testu tím, že požadují různé oblasti zájmu z mapové služby ArcGIS Enterprise. Tyto prostorové části dat obvykle mají podobu bodů nebo ohraničujících rámečků (bboxes) a jsou typicky uloženy v prostém textovém souboru nebo v některých případech v databázi.<\/P>Předchozí články Komunity o Load Testing ArcGIS Enterprise s Apache JMeter se zaměřily na strategie pro vytváření testovací logiky a spuštění testu. Ukázkové projekty uvedené v těchto blozích obsahovaly testovací data ve formě prostých textových souborů s hodnotami oddělenými čárkami (CSV), které byly přímo zapojeny do požadavků. Tyto CSV soubory obsahovaly položky jako ohraničující rámečky a odpovídající prostorovou referenci, aby poskytly HTTP požadavkům v testu informace o parametrech. Při každé iteraci testu se načte další řádek dat, který je pak vložen do požadavku.<\/P>
<\/span><\/P> Pro demonstrační účely tato testovací data dobře fungovala pro požadování různých měřítek mapy vůči službám jako SampleWorldCities a NaturalEarth. Nicméně tyto ukázkové testovací datové sady jsou omezené pro použití s jinými mapovými službami, protože předgenerované ohraničující rámečky byly vytvořeny pouze pro dotazování oblastí zájmu po celém světě na vysoké úrovni. Pokud vaše organizace pracuje s daty na úrovni státu, okresu nebo města, budete chtít mít testovací data zaměřená na tyto oblasti, abyste maximalizovali hodnotu zátěžového testu. Jinými slovy, chcete testovací data ve větším měřítku mapy a testovací data pokrývající specifickou oblast zájmu.<\/P>Generování takových dat specifických pro vaše služby nebo vaše prostorová data se stává klíčovou částí procesu pro vytvoření dobrého zátěžového testu. Zatímco složení několika geometrií ručně pro jednoduchý test je jistě možné, podpisy požadavků se rychle opakují, což vede k vzorcům škálovatelnosti, které jsou zkreslené a nereálné. Lepší test je ten, který využívá velké množství náhodných geometrií k efektivnějšímu zatížení mapové služby a hardwarových zdrojů.<\/P>Nástroje pro vytváření vlastních zátěžových dat<\/H1>Naštěstí existuje sada nedávno vydaných testing tools pro ArcGIS Pro na GitHubu, která činí úkol generování dat mimořádně snadným. <\/P>Název utility je: Load Testing Tools<\/STRONG> a je dostupná na: https:\/\/www.arcgis.com\/home\/item.html?id=b06ef175665a45d68f5796f321b56e61<\/A> <\/LI>Tento příklad v tomto článku byl založen na verzi 1.1 tohoto nástroje<\/LI><\/UL><\/LI><\/UL>Jeden z mých oblíbených nástrojů ve skupině je "Generate Bounding Boxes", který může rychle generovat ohraničující rámečky buď podle aktuálního rozsahu mapy nebo vybraného polygonu. Možnost zadat konkrétní polygon je velmi silná funkce, protože vytvořené geometrie mohou být filtrovány pouze na vaši oblast zájmu (např. země, stát, okres nebo město). Vygenerovaná data lze vizuálně ověřit (pomocí samostatných tříd prvků, které jsou vytvořeny) a přímo zapojit do JMeter Test Plan (pomocí CSV souborů, které jsou také vytvořeny). Opět velmi snadné... velmi výkonné.<\/DIV>
Vytváření vlastních testovacích dat<\/H1>Zpřístupnění nástrojů z ArcGIS Pro<\/H2>Jakmile byl projekt load-testing-tools <\/STRONG> stažen do vašeho počítače, umístěte složku do adresáře, který je přístupný nebo zpřístupněný ArcGIS Pro.<\/P>Například:<\/P>Umístěte složku load-testing-tools do C:\Users\[uživatelské_jméno]\Documents\ArcGIS<\/LI>Použijte Přidat připojení složky z Katalogu v ArcGIS Pro k zobrazení obsahu tohoto adresáře:<\/LI><\/UL>
<\/span><\/P>Použití polygonu k vymezení oblasti zájmu<\/H2>V tomto projektu ArcGIS Pro byla do mapy přidána třída prvků polygonu (Stát Indiana v USA růžově), aby definovala hranici kolem oblasti, kde budou generovány ohraničující rámečky pro požadavky v testu.<\/P>Projektovaný souřadnicový systém třídy prvků Indiana State je: WGS 1984 Web Mercator (auxiliary sphere)<\/EM>Jeho WKID je: 3857<\/EM><\/LI><\/UL><\/LI>Pro referenci je výchozí Basemap (World Topographic Map) ponechán v mapěProjektovaný souřadnicový systém Basemapy je také: WGS 1984 Web Mercator (auxiliary sphere)<\/EM><\/LI><\/UL><\/LI><\/UL>
<\/span><\/P>Vstupy nástroje Generate Bounding Boxes<\/H2>Nástroj Generate Bounding Boxes můžete spustit navigací do složky load-testing-tools z obrazovky Katalog ArcGIS Pro. Rozbalte Load Testing Tools.tbx<\/EM> a dvojklikem otevřete Generate Bounding Boxes. Obrazovka Geoprocessingu by se měla naplnit a vypadat podobně jako následující:<\/P>
<\/span><\/P>Jednou z pohodlných funkcí nástroje Generate Bounding Boxes je to, že technicky je připravený k použití jen kliknutím na Spustit! S výchozími možnostmi náhodně generuje ohraničující rámečky pomocí aktuálního rozsahu mapy ArcGIS Pro. <\/SPAN><\/P>Poznámka: Výchozí měřítka mapy nástroje Generate Bounding Boxes jsou podobná těm v ArcGIS Online, ale pro stručnost jsou uvedena pouze každé druhé měřítko. Pokud potřebujete další měřítka mapy, lze je ručně přidat přímo v nástroji.<\/STRONG>
I když to činí generování dat opravdu snadným, v tomto příkladu máme zájem generovat rámečky uvnitř konkrétního polygonu (Stát Indiana). Také chceme být velmi specifičtí ohledně měřítek mapy, která bude náš test používat, takže budeme chtít některá měřítka odstranit a jiná přidat přes rozhraní nástroje.
Z nástroje Generate Bounding Boxes:
Klikněte na červené X před 73957191, 18489298, 4622324, 1155581, 288895, 282, 70 pro odstranění těchto měřítek mapy
Z prázdného textového pole pod sloupcem Scale přidejte 36112 a použijte 100 ve sloupci Number of Records
Z prázdného textového pole pod sloupcem Scale přidejte 9028 a použijte 1000 ve sloupci Number of Records
Z prázdného textového pole pod sloupcem Scale přidejte 2257 a použijte 3000 ve sloupci Number of Records
Zvyšte počet záznamů pro 4514 na 1000 záznamů
Zvyšte počet záznamů pro 1128 na 3000 záznamů
Klikněte na rozbalovací nabídku pod Polygon Layer a vyberte třídu prvků zájmu v Mapě, v tomto případě Indiana<\Li>< P > < SPAN > < span class = "lia-inline-image-display-wrapper lia-image-align-center " image-alt = "arcgispro_selected_polygon.png " style = "width: 478px; " > < img src = "https://us.v-cdn.net/6038851/uploads/images/19605i0F3073F1B0DD1121/arcgispro_selected_polygon.png " role = "button " title = "arcgispro_selected_polygon.png " alt = "arcgispro_selected_polygon.png " / > < / span > < / SPAN > < / P > < UL > < LI >& nbsp ; Rozbalte Output Options < UL class = "lia-list-style-type-circle " > < LI > < SPAN > Všimněte si umístění csv souboru s ohraničujícími rámečky < / SPAN > < UL class = "lia-list-style-type-square " > < LI > < SPAN > Samostatné csv soubory podle měřítek mapy budou také vytvořeny na tomto místě < / SPAN > < / LI > < / UL > < / LI > < LI > < SPAN > Vyberte možnost „Output Separate Feature Class Per Scale“ < / SPAN > < / LI > < / UL > < / LI > < / UL >< P >< span class = "lia-inline-image-display-wrapper lia-image-align-center " image-alt = "arcgispro_outputoptions.png " style = "width: 489px; " >< img src = "https://us.v-cdn.net/6038851/uploads/images/19606iCB0258F985820922/arcgispro_outputoptions.png " role="button" title="arcgispro_outputoptions.png" alt="arcgispro_outputoptions.png" "/><\/span><\/P>Po přizpůsobení by vstup nástroje Generate Bounding Boxes měl vypadat následovně ([username] bude odpovídat vašemu uživatelskému jménu ve Windows):<\/LI><\/UL>
<\/span><\/P>Klikněte na SpustitSpuštění nástroje může chvíli trvat<\/LI>Obrazovka Obsah tabulky se začne plnit přidáváním tříd prvků do Mapy (jedna pro každé měřítko)<\/LI><\/UL><\/LI><\/UL>Vizualizace generovaných dat z jednotlivých tříd prvků<\/H2>Po dokončení by výstup v ArcGIS Pro měl vypadat podobně jako následující:<\/LI><\/UL>
<\/span><\/P>Jednotlivé třídy prvků usnadňují kontrolu kvality, protože je snadné vidět oblasti zájmu, které bude test vytvářet z generovaných dat<\/SPAN><\/LI><\/UL>Poznámka: Některé z generovaných ohraničujících rámečků mohou mít části své geometrie, které spadají mimo polygon zájmu. To je v pořádku.<\/STRONG><\/FONT><\/SPAN><\/P>Díky vizualizaci dat je také snadné vidět, proč bylo vytvořeno méně<\/EM> ohraničujících rámečků pro menší měřítka mapy jako 1:72 224 a 1:36 112<\/LI>Podobně je to důvod, proč bylo vytvořeno více<\/EM> ohraničujících rámečků pro větší měřítka mapy jako 1:2 257 a 1:1 128<\/LI><\/UL>
<\/span><\/P> Poznámka: V závislosti na vašich datech a jejich hustotě ve větších měřítcích může být výhodné vygenerovat více než 3000 ohraničujících rámečků (na měřítko), aby se "pokrylo více území". Mějte na paměti, že některé load test frameworky mohou načítat CSV data do paměti a vytváření extrémně velkých datasetů může vyžadovat více paměti od testovacího klienta.<\/STRONG><\/FONT><\/P>Vizualizace generovaných dat z jednotlivých CSV souborů<\/H2>Pomocí průzkumníka souborového systému přejděte do projektu ArcGIS Pro použitého k generování dat:C:\Users\[username]\Documents\ArcGIS\Projects\MyProject1<\/LI><\/UL><\/LI>Obsah složky by měl vypadat podobně jako následující:<\/LI><\/UL>
<\/span><\/P>Otevření obsahu souboru bounding_boxes_2257.csv by mělo vypadat následovně:<\/LI><\/UL>
<\/span><\/P>Tato data budou fungovat s většinou nástrojů pro load testing, které umožňují parametrizaci HTTP požadavků ze CSV souborů<\/SPAN>Poznámka: Třída prvků použitá jako Polygon Layer pro prostorové filtrování může využívat projekční soustavy jiné než WGS 1984 Web Mercator (auxiliary sphere)<\EM>. Nicméně generovaná CSV data budou stále promítnuta do ohraničujících rámečků s WKID 3857.<\STRONG>
Použití generovaných dat v Apache JMeter Test Plan
S procedurou pro generování prostorově přizpůsobených dat můžete vzít CSV soubory a importovat je do Apache JMeter Test Plan pro použití v load testu.<\P>
Předchozí testovací články:<\P>
Poskytnuté ukázkové testy Apache JMeter, které by byly dobrými šablonami pro použití s vašimi novými daty a proti vašim mapovým službám.<\P>
CSV Data Set Config<\H2>
Použitím prvku CSV Data Set Config v JMeter lze odkazovat na nová generovaná testovací data z jejich cesty v souborovém systému.<\P>
Cesta hodnoty Název souboru<\STRONG> odkazuje na umístění CSV souboru na disku
C:/JMeter Tests/naturalearth1/datasets/bounding_boxes_288895.csv
Ukázkové testovací projekty z předchozích článků používaly proměnné pro cestu
${ProjectFolder}/datasets/bounding_boxes_288895.csv
Hodnota Názvy proměnných<\STRONG> označuje záhlaví sloupců v CSV souboru
Zápis bbox,width,height,mapUnits,sr,scale<\STRONG> by se pak změnil na bbox_288895,width_288895,height_288895,mapUnits_288895,sr_288895,scale_288895<\STRONG>, protože test může používat jiná měřítka mapy, kde by jen "bbox" bylo nejednoznačné

Prvky HTTP Request směřující na vaši mapovou službu lze poté upravit tak, aby využívaly proměnné jako ${bbox_288895} , které odkazují na vaše generovaná testovací data.<\SPAN>
<\P>
<\P>
Apache JMeter
uvolněný pod
Apache
Licence 2.0. Apache, Apache JMeter, JMeter, pírko Apache a logo Apache JMeter jsou ochranné známky Apache Software Foundation.