aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/base.py
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@csail.mit.edu>2018-05-19 16:39:49 -0400
committerGravatar GitHub <noreply@github.com>2018-05-19 16:39:49 -0400
commit077666b77bf21054e1e1f67ba61dfbaf57525378 (patch)
treef38f14cf8adb099d94fdc28d52c64ae879a0359d /tests/base.py
parent30edae2956d346e7df7ca27fcc77432e45cea99e (diff)
parent4c01511f5bf2229da7b146943444278d714ed7d6 (diff)
Merge pull request #123 from ashalkhakov/tests
Adding Selenium-based checking to tests.
Diffstat (limited to 'tests/base.py')
-rw-r--r--tests/base.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/base.py b/tests/base.py
new file mode 100644
index 00000000..b9a026f2
--- /dev/null
+++ b/tests/base.py
@@ -0,0 +1,29 @@
+# use pip install selenium first
+# ensure you have both chome driver & chrome installed
+
+import unittest
+from selenium import webdriver
+from selenium.common.exceptions import NoSuchElementException
+
+class Base(unittest.TestCase):
+ """Include test cases on a given url"""
+
+ def start(self, path='main'):
+ self.driver.get('http://localhost:8080/' + path)
+ def xpath(self, path):
+ return self.driver.find_element_by_xpath('/html/body/'+path)
+ def body_text(self):
+ return self.driver.find_element_by_xpath('/html/body').text
+
+ def setUp(self):
+ """Start web driver"""
+ chrome_options = webdriver.ChromeOptions()
+ chrome_options.add_argument('--no-sandbox')
+ chrome_options.add_argument('--headless')
+ chrome_options.add_argument('--disable-gpu')
+ self.driver = webdriver.Chrome(options=chrome_options)
+ self.driver.implicitly_wait(10)
+
+ def tearDown(self):
+ """Stop web driver"""
+ self.driver.quit()