5

Mam problem z ustaleniem, w jaki sposób przeprowadzić test Angular e2e z programem Play Framework lub z testowaniem integracji Play. Uważam, że AngularJS traci dużo wartości, jeśli nie mogę tego zrobić. Nie mam pojęcia, jak zrobić e2e z Play. A jeśli chodzi o test integracji Play, webDriver może zobaczyć atrybuty ng, ale tak jak w przypadku kodu, który wypróbowałem, nie emuluje właściwego zachowania. Ktoś ma podobne doświadczenie lub rozwiązanie tego problemu?Jak grać w grę Framework z testowaniem AngularJS e2e lub testowaniem gry

A może jest dobra alternatywa dla Angulara (taka jak framework MVC z dobrą biblioteką), która lepiej integruje się z testowaniem Play i może pomóc mi zmniejszyć liczbę linii dla kodu końcowego? Używam już coffeescript, jQuery i Bootstrap. Dzięki!

+0

To zależy od webdriver używasz. Czy próbowałeś PhantomJS? Stwierdziłem, że PhantomJS jest bardzo wytrzymały. – Tanin

Odpowiedz

1

Proszę nieco bardziej precyzyjnie określić "prawidłowe zachowanie". Co to jest błąd? Czy problem z integracją testów e2e z przepływem pracy Play lub po prostu e2e AngularJS zielony zamiast czerwonego?

Trudność polega na zdefiniowaniu "End-to-End", ponieważ nie ma dobrej definicji tego, w Wikipedii nie ma o tym wzmianki. Możesz dobrze zrozumieć, co to jest, ponieważ jest to samo-mówienie, a tutaj znajduje się również doskonały wątek: http://www.geekinterview.com/question_details/40319

Załóżmy, że chcesz przetestować wszystkie scenariusze z Front + Back w środowisku zbliżonym do prod.

End-to-end testing AngularJS ma być wykonane z karmą, ale ostrzegając, wkrótce zostanie zmienione przez ProtractorJS.

Wykonywanie testu e2e z Karma ma poważne wady:

  • może zawieść jeśli przetestować aplikację angularjs z zaplecza, a dokładniej, wszystko trochę zbyt powolny w backend może spowodować zielonej testu czasami kończy się niepowodzeniem bez dobrego powodu.

  • Zabójca un-cecha zrobić prawidłowego testowania e2e z kątowym brzmi: nie można kliknąć dwukrotnie, rolki myszki itp

Oto moje rady:

  • Używaj Karmy tylko do testowania na froncie i używaj dobrych starych skrótów jako back-end. Sprawdź, czy odpowiedni element css jest wyświetlany i czy zostało wykonane poprawne żądanie HTTP. Da ci to ogromną pewność, że programista Front-End.

  • NIE używaj Karmy do testu end-to-end. Znalazłem Sikuli absolutnie wybitnego, aby wykonać tę pracę. Użyj go z fitnesse lub testNG dla lepszej integracji.

  • Być może ProtractorJS wykona zadanie w najbliższej przyszłości.

Sikuli: http://www.sikuli.org/

przykładem fitnesse + sikuli: https://github.com/xebia/FitnesseSikuli

kątomierz: https://github.com/angular/protractor

+0

Czy odniosłeś sukces przy testowaniu w ten sposób w Play? – danielbh

+0

Nie w Play, ale z Java backend na appengine. Tak, to bardzo udany sposób. Mam nadzieję, że będzie inna odpowiedź, ponieważ jest to interesujące pytanie, które może mieć wiele możliwych dobrych odpowiedzi. Nie mówię, że mam sposób, żeby to zrobić. Po prostu mówię, że udało się to udowodnić ... przynajmniej raz;) – bdavidxyz

+0

Dobrze, dziękuję za radę. Zajrzę to wszystko. – danielbh

Powiązane problemy