On 06/06/16 17:01, Ed Bartosh wrote:
From: Elliot Smith <[email protected]>
Previously, we didn't specify a specific version of Selenium.
When upgrading to Python 3 and installing Selenium to work with it,
the JS unit test broke, as the report format produced by Selenium
had changed.
Modify the test so that it works with the latest Selenium report
format.
Add a note to the README that the given Selenium version should
be used to prevent unexpected test failures.
Signed-off-by: Elliot Smith <[email protected]>
Signed-off-by: Ed Bartosh <[email protected]>
---
bitbake/lib/toaster/tests/browser/README | 7 ++++---
bitbake/lib/toaster/tests/browser/test_js_unit_tests.py | 8 ++++----
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/bitbake/lib/toaster/tests/browser/README
b/bitbake/lib/toaster/tests/browser/README
index 63e8169..f57154e 100644
--- a/bitbake/lib/toaster/tests/browser/README
+++ b/bitbake/lib/toaster/tests/browser/README
@@ -4,10 +4,11 @@ These tests require Selenium to be installed in your Python
environment.
The simplest way to install this is via pip:
- pip install selenium
+ pip install selenium==2.53.2
-Alternatively, if you used pip to install the libraries required by Toaster,
-selenium will already be installed.
+Note that if you use other versions of Selenium, some of the tests (such as
+tests.browser.test_js_unit_tests.TestJsUnitTests) may fail, as these rely on
+a Selenium test report with a version-specific format.
To run tests against Chrome:
diff --git a/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py b/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
index e63da8e..3c0b962 100644
--- a/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
+++ b/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
@@ -38,11 +38,11 @@ class TestJsUnitTests(SeleniumTestCase):
def test_that_js_unit_tests_pass(self):
url = reverse('js-unit-tests')
self.get(url)
- self.wait_until_present('#tests-failed')
+ self.wait_until_present('#qunit-testresult .failed')
- failed = self.find("#tests-failed").text
- passed = self.find("#tests-passed").text
- total = self.find("#tests-total").text
If these elements are no longer needed, can you also remove them from
the jsunit test page (static/js/tests/tests.js) thanks
+ failed = self.find("#qunit-testresult .failed").text
+ passed = self.find("#qunit-testresult .passed").text
+ total = self.find("#qunit-testresult .total").text
logger.info("Js unit tests completed %s out of %s passed, %s failed",
passed,
--
_______________________________________________
toaster mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/toaster