Commit Graph

253 Commits

Author SHA1 Message Date
Mohamed Amine Ben Salah
a7df0393c7 added Check presence Test spec to user.test.js 2020-02-07 15:05:28 -03:00
Maxim Khlobystov
7518b4cd99 Make the Puppeteer tests work with master branch 2020-01-28 14:25:27 -05:00
Maxim Khlobystov
a370766fbe Remove some create parameters 2019-08-30 14:05:33 -04:00
Maxim Khlobystov
d0fda1e3c7 New way for tests to login 2019-08-28 15:13:00 -04:00
Maxim Khlobystov
3fd19881da Clicking buttons instead of pressing Enter key 2019-08-23 15:44:47 -04:00
Maxim Khlobystov
b1cd809948 Update for the WebdriverIO tests 2019-06-21 16:11:05 -04:00
Maxim Khlobystov
1eafbf04f8 WebdriverIO tests. 2019-06-04 11:05:27 -04:00
KDSBrowne
8b30fe00b3 Merge remote-tracking branch 'Upstream/master' into html5-packages-upgrade 2018-12-10 02:12:42 +00:00
Maxim Khlobystov
af7e601c82 package.json file for tests 2018-12-03 16:01:34 -05:00
Maxim Khlobystov
34c2ab3b74 Remove the webdriverio-related code and dependencies, remove package.json from the puppeteer folder 2018-11-30 16:22:58 -05:00
Maxim Khlobystov
b0cfc662c1 Fix the selectors in presentation tests 2018-11-30 15:56:21 -05:00
Maxim Khlobystov
835b07384a Fix the selectors in whiteboard tests 2018-11-30 12:59:14 -05:00
Maxim Khlobystov
aa5a0f6dc9 Fix the selectors in user list tests and chat tests 2018-11-30 12:32:19 -05:00
Maxim Khlobystov
59446aa4f6 Merge branch 'html5-tests-v2' of github.com:pedrobmarin/bigbluebutton into html5-tests-v2 2018-11-28 15:08:36 -05:00
Pedro Beschorner Marin
b83e16e4ad Open user list before chat and user tests 2018-11-23 17:18:05 -02:00
Maxim Khlobystov
19786fa527 Merge branch 'master' of github.com:bigbluebutton/bigbluebutton into html5-tests-v2 2018-11-23 13:17:36 -05:00
Maxim Khlobystov
cd6f5a19cf Add --runInBand option to the jest command 2018-11-23 12:38:32 -05:00
Pedro Beschorner Marin
fd715f3aa8 Getting rid of puppeteer timeouts for now 2018-11-23 12:43:35 -02:00
Pedro Beschorner Marin
b854cdccec Structured the tests in modules 2018-11-23 10:55:16 -02:00
Pedro Beschorner Marin
fc31a0d394 Refactored base page and started chat saving test 2018-11-22 17:20:06 -02:00
Pedro Beschorner Marin
7a18655230 Testing chat copy and evaluating chat tests result 2018-11-22 17:20:06 -02:00
Pedro Beschorner Marin
3f85f421b7 Increasing jest timeout and setting it to run as a single thread 2018-11-22 17:20:06 -02:00
Pedro Beschorner Marin
345a7d343d Refactored chat message test and included chat clear 2018-11-22 17:20:06 -02:00
Pedro Beschorner Marin
11b46959e1 Missing screenshot update 2018-11-22 17:20:06 -02:00
Pedro Beschorner Marin
f817e38d5d Refactored puppeteer commands to avoid timeout errors 2018-11-22 17:20:06 -02:00
Maxim Khlobystov
4b5193fa65 Moving tests-related dependencies to the main package.json 2018-11-22 13:22:52 -05:00
Maxim Khlobystov
05e7c56351 Prevent linter from ignoring the test files + some linting. 2018-10-12 14:46:26 -04:00
Maxim Khlobystov
5b0ea85ba6 Getting the Docker-related files from a remote repo + some code cleanup. 2018-10-09 16:20:21 -04:00
browniecab
dbcc684a46 Fixes
(cherry picked from commit 359fff4c28c58bb5d047993ae91cf2b65f03eaa6)
2018-10-03 13:47:31 -04:00
browniecab
a10ea02e1c Changed Axios adapter
(cherry picked from commit f52b5f0fb9d24773eb8623b884ae811eabb338bc)
2018-10-03 13:47:15 -04:00
browniecab
c4d27200bb Add known issues to readme
(cherry picked from commit a6b601f0752198f80c71c303b7d5df1e08a206b5)
2018-10-03 13:46:58 -04:00
browniecab
ac471f95cf Fixed error in readme
(cherry picked from commit 0b30dbbdacbeaebd80e113d8af15dd47cea5067c)
2018-10-03 13:46:37 -04:00
browniecab
4c3d50aabd Add instructions to readme
(cherry picked from commit 016f7732620bc40ec6c526c563f66a359d36de15)
2018-10-03 13:46:15 -04:00
browniecab
b5bd5754a1 Use Jest for running tests
(cherry picked from commit d82cef50e99e9da6f0d6b94f2bd950bf063d6400)
2018-10-03 13:45:28 -04:00
browniecab
c0114f8485 Update tests
(cherry picked from commit 817957b784061fb9519eac84a719556748c6e3e6)
2018-10-03 13:44:14 -04:00
browniecab
c4176cc35d Fix joining without audio
(cherry picked from commit 96c7f16d4b6cbb4dbd8f2e2dead45d4cad5d0f67)
2018-10-03 13:35:41 -04:00
browniecab
b024259ce3 Fix joining without audio
(cherry picked from commit 7e7980a4b558f04d9e63a288363a287893ded99a)
2018-10-03 13:34:50 -04:00
browniecab
5769acd882 Update joining a meeting without audio
(cherry picked from commit 4ff9a1408d5bb00be361d9843afb04dc3d4354e2)
2018-10-03 13:34:35 -04:00
browniecab
a9fcad4a0d Added Puppeteer tests
(cherry picked from commit 91ed0475fce431322bef33e0ccb2465d2213f87f)
2018-10-03 13:32:53 -04:00
Maxim Khlobystov
9a3804ebdd Improved the naming of the test cases / screenshot files. 2018-01-22 18:32:29 -05:00
Maxim Khlobystov
fac7111cfd Updated the screenshots. 2018-01-10 11:37:18 -05:00
Maxim Khlobystov
b09996b896 Started using lodash to merge the wdio config files in favour of deepmerge. 2018-01-09 17:13:48 -05:00
Maxim Khlobystov
2acc4a19d4 Committing the screenshots. 2018-01-09 12:10:29 -05:00
Maxim Khlobystov
248db82e59 Cleanup + added temporary desktop-only testing command. 2018-01-09 11:36:21 -05:00
Maxim Khlobystov
9ebc82d29f Committing additional test specs. 2018-01-08 21:43:34 -05:00
Maxim Khlobystov
0e1bb6c8b4 Moved all the existing modal elements to the home page object. 2017-12-01 17:30:04 -05:00
Maxim Khlobystov
c1dd7fa441 Small cleanup for the import statements. 2017-12-01 15:38:16 -05:00
Maxim Khlobystov
8850b6db64 More cleanup on the visual regression methods. 2017-12-01 15:15:06 -05:00
Maxim Khlobystov
be6abed94c Introduced the base wdio config file. 2017-12-01 11:35:09 -05:00
Oleksandr Zhurbenko
d5460854d8 Set the file structure for the html5 visual regression screenshots 2017-11-13 15:23:05 -08:00
Maxim Khlobystov
74f4cd3367 Restructured the testing configs to run 4 browser sessions one after another: desktop Chrome, desktop Firefox, iPhone 6 Plus and Nexus 5X. 2017-11-10 17:21:53 -05:00
Oleksandr Zhurbenko
fb700ed510 Added browser names and versions for the screenshots under /diff and /screen 2017-11-10 13:22:32 -08:00
Oleksandr Zhurbenko
b3a75e71f2 Corrected visual regression config 2017-11-10 12:47:50 -08:00
Oleksandr Zhurbenko
abb75276fa Added a few different viewports for the test suites 2017-11-10 12:07:14 -08:00
Oleksandr Zhurbenko
152152b65b Removed browser name from the screenshot names 2017-11-10 11:55:57 -08:00
Oleksandr Zhurbenko
0a8c0c959c Fixed undefined in the test screenshot names, added width and height 2017-11-10 11:48:50 -08:00
Oleksandr Zhurbenko
9934d90fff Integrated babel-plugin-react-remove-properties for Selenium tests 2017-11-04 00:38:44 -07:00
Oleksandr Zhurbenko
716de591ed Integrated webdriver-manager into the testing process 2017-11-03 13:51:14 -07:00
Maxim Khlobystov
cc749d5f01 Starting to cleanup the modals spec: moved login logic to a page object. 2017-11-03 19:33:01 +00:00
Oleksandr Zhurbenko
97c854a003 Fixed example tests 2017-11-03 10:59:54 -07:00
Oleksandr Zhurbenko
25466b30a7 Fixed console warnings in the modals.spec.js 2017-10-30 11:39:48 -07:00
Oleksandr Zhurbenko
05ac42c0ad Fixed an issue with failing acceptance tests 2017-10-27 16:36:54 -07:00
Oleksandr Zhurbenko
85b6fb6ad1 corrected paths 2017-10-27 13:37:45 -07:00
Oleksandr Zhurbenko
17b988c35e Moved an acceptance test to the subfolder under /specs 2017-10-27 13:32:32 -07:00
Oleksandr Zhurbenko
0d50bcbfe1 Added waitForExist for the Unmute button to prevent race condition 2017-10-27 13:02:00 -07:00
Maxim Khlobystov
3889efe81b Removed the visual regression options from the main wdio config file. 2017-10-27 19:14:35 +00:00
Maxim Khlobystov
60d35d845a Setup the base URL. 2017-10-27 17:10:31 +00:00
Maxim Khlobystov
ecfed1a728 Initial setup work for visual regression testing. 2017-09-18 21:09:21 -04:00
Maxim Khlobystov
9a8a4a2a5e Added an instance of the mobile Chrome (iPhone 6). 2017-08-28 11:52:15 -04:00
Maxim Khlobystov
0d7072f6c7 Put the logic of typing a username into a separate function, thus avoiding repetition. 2017-08-21 14:29:25 -04:00
Maxim Khlobystov
7819f425d8 Added Google Dev and Firefox Nightly to the browsers list. 2017-08-21 11:42:10 -04:00
Maxim Khlobystov
397a94b1c9 Put the assertion logic that browsers share into a separate utility class, thus avoiding unnecessary code repetition + we are now fetching the base url from the wdio config (not hardcoded anymore). 2017-08-16 12:31:49 -04:00
Maxim Khlobystov
cca17c222e Got rid of the tests' getting started document (these docs are already on the official docs website). 2017-08-15 11:04:38 -04:00
Maxim Khlobystov
511529c93f Cleanup: removing some debug code. 2017-08-15 11:02:10 -04:00
Maxim Khlobystov
723532c4a4 Increased the Jasmine default timeout to prevent async-related errors when running the tests on desktop Ubuntu. 2017-08-15 10:44:19 -04:00
Maxim Khlobystov
3d7a35972b Updated the page object classes according with the multiremote needs. 2017-08-14 12:58:43 -04:00
Maxim Khlobystov
8379d5207c Updated all the existing landing page specs to support mutiremote mode. 2017-08-14 12:30:14 -04:00
Maxim Khlobystov
4e55403348 Added multiremote to the test runner config. 2017-08-14 10:03:43 -04:00
Maxim Khlobystov
03373b5abe Make sure the acceptance tests that involve keyboard are not executed on Firefox
This commit prevents logging with Enter key from happening in Firefox tests. There's a well-known bug associated with browser.keys() on Firefox. We add an additional check to the Login test specs to prevent that from happening.
2017-06-05 23:42:33 +00:00
Maxim Khlobystov
b0762b9d84 Update the acceptance testing docs
This commit does the following updates:
- fixes the misprint that prevented Chrome from being installed
- removes the step of creating the `tools` directory (we don't need this anymore, since the directory is commited now)
2017-06-04 23:52:04 +00:00
Maxim Khlobystov
5b0e0d35eb Add an empty hidden file inside tools to be able to commit the directory 2017-06-04 23:44:36 +00:00
Maxim Khlobystov
f100563516 Upgrade test reporting
This commit does the following:
- adds the Spec test reporter to display all the passed/failed test specs after all the tests finish running
- removes console logging (we don't need it anymore, since we can see the reported results at the end of every test run)
- adds the XML test reporter for easier Jenkins integration
2017-06-04 23:25:51 +00:00
Maxim Khlobystov
48b5ca32cb Translate the page object classes to ES6 2017-06-03 01:27:29 +00:00
Maxim Khlobystov
584d15d7c6 Fix the JSCS errors introduced by the new testing code 2017-06-03 00:25:39 +00:00
Maxim Khlobystov
41645c315c Get rid of all the old testing code that can't be run anymore. 2017-05-30 02:04:27 +00:00
Maxim Khlobystov
77c776bd78 Initialize custom command for a login action (not used yet, will be utilized in future tests). 2017-05-30 01:45:30 +00:00
Maxim Khlobystov
b2f09ad1f0 Add Node.js installation step to the docs on acceptance testing. 2017-05-30 01:17:13 +00:00
Maxim Khlobystov
73892627ae Fix multiple misprints in the acceptance testing docs. 2017-05-30 00:49:39 +00:00
Maxim Khlobystov
5dbd42ce2e Update the acceptance test docs
This commit adds the steps of how to run and configure the acceptance test specs and suites.
2017-05-28 05:32:52 +00:00
Maxim Khlobystov
68de9493a5 Group the login acceptance tests into a single test suite. 2017-05-28 05:07:06 +00:00
Maxim Khlobystov
3cef659a43 Set the test runner to take only those files that have *.conf.js filenames. 2017-05-28 03:30:11 +00:00
Maxim Khlobystov
4703692de8 Start writing the Getting Started guide for the acceptance tests
This commit adds the INSTALL.md file with all the steps to get the Selenium server up and running.
2017-05-25 23:43:53 +00:00
Maxim Khlobystov
220fa275b4 Add two test cases to verify that user can't enter the client without a username
This commit does the following:
- Adds two specs to test the landing page behaviour with no username entered (clicking the Join button or pressing Enter key)
- Fixes the test case that checks the landing page title (it previously didn't really do the job)
2017-05-22 02:38:42 +00:00
Maxim Khlobystov
d69fc3bfaa Test both ways of joining HTML5 client from the landing page: clicking the Join button and pressing Enter
This commit improves the landing page test spec by introducing the way to enter the client by pressing Enter. We also temporarily switch to Chrome in the main config file due to the bug in Geckodriver that doesn't allow us to use keyboard keys.
2017-05-22 01:56:02 +00:00
Maxim Khlobystov
e6cce3d0e6 Set the Selenium test runner to log everything. 2017-05-22 01:24:41 +00:00
Maxim Khlobystov
0535edf6c1 Upgrade the landing page test to enter the actual HTML5 client
This commit adds the action of submitting the landing page form to the test spec.

Note: Geckodriver 0.11.1 has a bug that prevents running our landing page test on Firefox 5.3 (version 5.2 works fine).
2017-05-16 03:15:22 +00:00
Maxim Khlobystov
0c41baa439 Setup wdio + Finish the dummy landing page title test
This commit adds the config file for the wdio test runner. Using the packaged runner instead of the particular Jasmine runner allows us to do the following:
- Use the global browser object (simplifies access to the Selenium methods from any particular assertion)
- Avoid installing Jasmine globally

The dummy landing page title test actually does the job now.
2017-05-15 01:29:00 +00:00
Maxim Khlobystov
2013109236 Do initial WebdriverIO setup + Add dummy landing page title test
This commit adds 2 packages:
    - WebdriverIO main package
    - Jasmine integration for WebdriverIO

Dummy landing page spec is created (supposed to test the title, but doesn't actually do that yet). This new spec follows the Page Object pattern.
2017-05-14 03:52:43 +00:00
Oleksandr Zhurbenko
8b4747a89d Fixed all the 120+ linter warnings 2016-06-27 11:24:37 -07:00
Anton Georgiev
6a92c9400b restructure modifiers and methods 2016-05-12 17:43:59 +00:00
Anton Georgiev
e299281a0a move collections out of Meteor 2016-04-28 21:10:43 +00:00
Maxim Khlobystov
76aa113dda Autofixed most of the linter warnings related to the Airbnb JavaScript Style Guide.
Conflicts:
	bigbluebutton-html5/client/globals.js
	bigbluebutton-html5/client/views/whiteboard/whiteboard.js
	bigbluebutton-html5/server/collection_methods/users.js
	bigbluebutton-html5/server/server.js
2016-04-06 10:08:08 -03:00
Maxim Khlobystov
1c311fb9cf Combined two npm configuration files together and put it into the root directory of HTML5 client (required by Meteor to recognize the location of packages installed). 2016-04-06 10:05:52 -03:00