Wpis z mikrobloga

Mirki spod tagów: #qa #testowanie #testy oraz #python
Wprowadzana jest w dziale testów automatyzacja zgodna z Page Object Pattern.
Jak przed tworzeniem metod do testów przygotować identyfikatory, żeby w razie zmiany (przykładowo) id jakiegoś pola zmienić go w teście tylko w jednym miejscu, a nie wszędzie?
1. Id, nazwa klasy, css selector powinny być przekazywane jako stringi:
- w ciele klasy (przykład pierwszy i drugi na pastebin)
- poza klasą? (tego nie ma w kodzie na pastebin)
2. Czy może powinny być metody zwracające już konkretny, wyszukany obiekt? Przykład drugi na pastebin
3. Czy lepiej będzie jak konstruktor otworzy daną stronę czy może też ją zwróci jako obiekt:
- driver.get(adresstrony) # przyklad pierwszy
- return driver.get(adres
strony) #przyklad drugi

Osoby znające standardy Page Object Pattern, ale bez znajomości Pythona, powinny z samego opisu czy kodu domyślić się z czym mam problem.
http://pastebin.com/cJbB6fVJ
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@morsik: Prawde mowiac bylem pewien, ze kilka dni temu tak robilem, ale pewnie po prostu stworzyłem funkcję zwracającą obiekt, a nie umieściłem w konstruktorze.
Pytania w sumie aktualne, choć chyba juz nikt nie odpowie.
  • Odpowiedz
@venomik: Może 3 i jak napisano powyżej konstruktor nie zwraca. A funkcje zwracjące funkcje i obiekty sa bardzo ok. Raczej jednak nic z tego pastebina nie jest poprawne, wywołujesz tam ciągle jakieś rzeczy spoza namespace danej funkcji.
  • Odpowiedz