Wytyczne dotyczące dopasowywania korelacji danych

Podczas wykonywania testu może okazać się, że obciążenie serwera nie jest takie, jakiego oczekiwano, lub baza danych nie jest aktualizowana zgodnie z oczekiwaniami. Przyczyną tych problemów może być niekompletna lub nieprawidłowa korelacja danych.
Aby zidentyfikować problemy związane z korelacją danych:
  1. W widoku Potencjalne błędy korelacji znajdź brakujące lub niepoprawne korelacje danych. Więcej informacji na ten temat można znaleźć w sekcji Znajdowanie błędów korelacji danych.
  2. Wykonaj każdy test osobno lub w harmonogramie z opcją Poziom rejestrowania dla błędów, niepowodzeń i ostrzeżeń ustawioną na wartość All (Wszystkie).
  3. Po wykonaniu testu otwórz dziennik testu zgodnie z opisem w sekcji Wyświetlanie dzienników testów.

Algorytmy korelacji danych używane podczas generowania testu są oparte na znanych i sprawdzonych procedurach. Jednak te procedury ciągle się zmieniają, dlatego podczas zautomatyzowanego korelowania danych mogą wystąpić różne typy błędów:

Niewystarczająca korelacja: parametry mają różne nazwy lub występują w nieoczekiwanych miejscach

Gdy dwa parametry, które muszą być skorelowane, mają różne nazwy, zautomatyzowana korelacja danych nie rozpoznaje, że dwa parametry są ze sobą powiązane. Jako przykład może posłużyć następujące żądanie: http://www.przykład.com?id=12345. To żądanie musi zostać skorelowane z odpowiedzią serwera, która zawiera wartość customer_ID=12345, a nie wartość ID=12345. W tym przypadku parametr ID musi zostać skorelowany z wartością customer_ID.

Korelacja danych zwykle łączy wartość odpowiedzi zwróconą z serwera z kolejną wartością żądania. Algorytmy zautomatyzowanej korelacji szuka w adresie URL i danych POST potencjalnych dopasowań. Jednak możliwe jest użycie innych schematów zwracania parametrów. Jako przykład może posłużyć następujące żądanie: http://www.przykład.com?id=12345. To żądanie musi zostać skorelowane z odpowiedzią serwera, która zawiera parę nazwa-jednostka href name="customer_ID" entity="12345", a nie wartość ID=12345. W tym przypadku parametr ID musi zostać skorelowany z wartością name="customer_ID", a wartość 12345 musi zostać skorelowana z wartością entity="12345".

Poniżej przedstawiono dodatkowe przyczyny wystąpienia niewystarczającej korelacji:
  • Produkt Siebel używa formatu gwiaździstej tablicy. Standardowe algorytmy korelacji nie mogą pobierać danych w tym formacie ani ich podstawiać.
  • Protokół SOAP określa parametry korelacji w zewnętrznych plikach XML. Algorytmy korelacji nie mogą korelować parametrów w zewnętrznym pliku z parametrami z testu.
Aby w takiej sytuacji ręcznie skorelować dane:
  1. W edytorze testu znajdź oba parametry, które mają zostać skorelowane.
  2. Przejdź do parametru, który wystąpił w teście jako drugi, i wybierz go. Jest to miejsce podstawienia.
  3. W oknie Źródła danych testu kliknij kartę Odwołania.
  4. Wybierz źródło danych, które ma zostać użyte jako odwołanie, i kliknij opcję Podstaw z.

Niewystarczająca korelacja: jeden parametr nie jest wymieniony

Czasami parametr lub wartość muszą zostać skorelowane z poprzednim parametrem lub wartością, które nie są wymienione w teście, ponieważ są wartościami obliczonymi, na przykład przez program JavaScript. W takiej sytuacji aby poprawnie skorelować dane, należy sprawdzić, gdzie i w jaki sposób wartość lub parametr zostały obliczone, a następnie użyć niestandardowego bloku kodu. Więcej informacji dotyczących kodu niestandardowego zawiera temat Rozszerzanie wykonania testu za pomocą kodu niestandardowego.

Jako przykład może posłużyć następujący adres WWW: http://www.przyklad.com?login_stamp=12345_Apr_11_07, gdzie wartość parametru login_timestamp to połączenie identyfikatora logowania i bieżącej daty. W takim przypadku należy wygenerować niestandardowy kod, który łączy identyfikator logowania i datę.

Przykładowo serwer zwrócił identyfikator logowania i datę jako oddzielne jednostki: href "customer_id=12345" Date="Apr_11_07". W takiej sytuacji można umieścić te parametry w oddzielnych odwołaniach i zastąpić je oddzielnie w kolejnych żądaniach, które używają identyfikatora klienta i daty.

Nadmiarowa korelacja

Zautomatyzowana korelacja danych jest oparta na dopasowywaniu wzorca: parametr lub wartość parametru są korelowane z kolejnym parametrem lub wartością parametru o takiej samej lub podobnej nazwie. Jednak czasami może okazać się, że parametry o takiej samej lub podobnej nazwie w rzeczywistości nie są ze sobą powiązane. W najlepszym przypadku zbędne korelacje nie wyrządzą żadnych szkód, co najwyżej zwiększą nieznacznie obciążenie. W najgorszym - aplikacja nie będzie oczekiwać korelacji i jej działanie zostanie zakończone podczas odtwarzania.

Aby usunąć nadmiarową korelację danych:
  1. W edytorze testu znajdź miejsce podstawienia, które nie może zostać skorelowane. Domyślnie skorelowane dane są oznaczane kolorem fioletowym.
  2. Kliknij prawym przyciskiem myszy miejsce podstawienia.
  3. Kliknij opcję Usuń podstawienie.

Niepoprawna korelacja

Parametr, który wymaga korelacji danych, może wystąpić kilkukrotnie w ramach jednego testu. Na przykład parametr identyfikatora sesji, który został początkowo użyty w momencie logowania się użytkownika, może również zostać użyty we wszystkich kolejnych żądaniach. Jeśli instancje parametru w teście nie są zgodne, algorytmy korelacji mogą użyć niepoprawnej instancji.

Za pomocą preferencji generowania testu HTTP można zoptymalizować automatyczną korelację danych pod kątem dokładności lub efektywności.
  • Dokładność: każde wystąpienie parametru jest korelowane z najbliższym poprzednim wystąpieniem. Jest to ustawienie domyślne.
  • Efektywność: każde wystąpienie parametru jest korelowane z pojedynczym poprzednim wystąpieniem.
Uwaga: Jeśli użytkownik nie zastosuje ręcznie korelacji w polu Referer w nagłówku żądania HTTP, pole Referer zostanie automatycznie skorelowane zgodnie z potrzebami. Jeśli jednak korelacja zostanie zastosowana ręcznie, automatyczna korelacja nie zostanie wykonana.
Niepoprawne korelacje występują częściej, jeśli opcja Optymalizuj automatyczną korelację danych na potrzeby wykonywania jest ustawiona na wartość Efektywność. Aby poprawić nieprawidłową korelację:
  1. W edytorze testu znajdź wartość, która jest niepoprawnie skorelowana.
  2. Kliknij prawym przyciskiem myszy miejsce podstawienia.
  3. Kliknij opcję Usuń podstawienie.
  4. Ponownie kliknij prawym przyciskiem myszy miejsce podstawienia.
  5. Kliknij opcję Podstaw i wybierz poprawny parametr.

Opinia