2014-06-02 29 views
9

Próbuję użyć Allure-framework, aby wygenerować raport dla moich testów Selenium WebDriver. Używam frameworków JUnit i allure-maven-plugin z wersją 1.3.9 Allure. Przeprowadzam testy z mvn test, a następnie generuję raport, używając mvn site. Widzę wygenerowany raport w katalogu target/site/allure-maven-plugin/. Kiedy otwieram stronę index.html z Firefoksem, działa ona normalnie. Jednak gdy robimy to samo w przeglądarce Chrome lub Safari , nic nie widzę.Raport o urlisku: nic nie jest wyświetlane w przeglądarce Chrome

Co jest nie tak? Czy czegoś brakuje? Mój plik pom.xml znajduje się pod numerem here.

Odpowiedz

12

Ten problem jest związany z domyślnymi ustawieniami zabezpieczeń Webkit, które zabraniają wykonywania żądań Ajax w lokalnym systemie plików. Masz co najmniej dwa możliwe rozwiązania:

  1. służyć index.html z jakiegoś serwera WWW jak Nginx lub Apache. To będzie emulować zdalną stronę internetową i tym samym oszukać twoją przeglądarkę. Z Allure CLI 2.0+ można to zrobić za pomocą następującego polecenia:

$ raport Allure otwarty

  1. Zastosowanie --allow-file-dostępowy -z-plików Flaga Chrome. Zobacz szczegóły w this question.
+1

Jeśli używasz Java i Maven można również użyć Jetty i odpowiednią wtyczkę dla Maven [] (http://mvnrepository.com/artifact/org.mortbay.jetty/jetty-maven-plugin). –

+2

Przy okazji, jeśli nie jesteś w 100% fanem Chrome, możesz po prostu użyć Firefoksa, który nie ma tego problemu. –

0

Oprócz powyższej odpowiedzi pomocne może być użycie opcji "--ignore-certifcate-errors" z opcją chromeOptions.

DesiredCapabilities capabilities; 
capabilities = DesiredCapabilities.chrome(); 
ChromeOptions chromeOptions = new ChromeOptions(); 
chromeOptions.addArguments("--ignore-certifcate-errors"); 
chromeOptions.addArguments("test-type"); 
capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions); 
WebDriver driver = new ChromeDriver(capabilities);