diff --git a/javascript/Mod1/1.05/chromedriver.exe b/javascript/Mod1/1.05/chromedriver.exe new file mode 100644 index 00000000..e87888b6 Binary files /dev/null and b/javascript/Mod1/1.05/chromedriver.exe differ diff --git a/javascript/Mod1/1.05/geckodriver.exe b/javascript/Mod1/1.05/geckodriver.exe new file mode 100644 index 00000000..c59764ab Binary files /dev/null and b/javascript/Mod1/1.05/geckodriver.exe differ diff --git a/javascript/Mod1/1.05/package.json b/javascript/Mod1/1.05/package.json index c1274124..04c03ec3 100644 --- a/javascript/Mod1/1.05/package.json +++ b/javascript/Mod1/1.05/package.json @@ -12,10 +12,10 @@ "author": "", "license": "ISC", "dependencies": { - "geckodriver": "^1.19.1", + "chromedriver": "^94.0.0", + "geckodriver": "^2.0.4", "mocha": "^8.0.1", - "chromedriver": "83.0.0", - "selenium-webdriver": "4.0.0-alpha.7", - "mocha-parallel-tests": "2.3.0" + "mocha-parallel-tests": "2.3.0", + "selenium-webdriver": "4.0.0-alpha.7" } } diff --git a/javascript/Mod1/1.05/test/LocatorTest.js b/javascript/Mod1/1.05/test/LocatorTest.js new file mode 100644 index 00000000..7e66f078 --- /dev/null +++ b/javascript/Mod1/1.05/test/LocatorTest.js @@ -0,0 +1,31 @@ +// filename: test/LocatorTest.js +// ... +const { Builder, By } = require('selenium-webdriver') +const path = require('path') + +//The Test +describe('Locate', function() { + this.timeout(30000) + let driver + + beforeEach(async function() { + driver = await new Builder().forBrowser('firefox').build() + }) + afterEach(async function() { + await driver.quit() + }) + it('check red button text' , async function() { + await driver.get('https://the-internet.herokuapp.com/challenging_dom') + await driver + .findElement( By.css('.button') ) + .click() + await driver + .findElement( By.css('.button.success') ) + .click() + // Return the text of the red button id=button alert contains 'foo', 'bar', 'baz', or 'qux' + var redButtonMessage = await driver + .findElement(By.css('.button.alert')) + .getText() + console.log(redButtonMessage) + }) +}) \ No newline at end of file diff --git a/javascript/Mod1/1.05/test/LoginTest.js b/javascript/Mod1/1.05/test/LoginTest.js index 40d67b08..57c30678 100644 --- a/javascript/Mod1/1.05/test/LoginTest.js +++ b/javascript/Mod1/1.05/test/LoginTest.js @@ -1,18 +1,34 @@ const { Builder } = require('selenium-webdriver') const path = require('path') +const assert = require('assert') -describe('Login', function() { - +//describe is a method from Mocha +describe('Login', function () { + this.timeout(30000) + let driver - beforeEach(async function() { - + beforeEach(async function () { + /* const vendorDirectory = + path.delimiter + path.join(__dirname, '..', 'vendor') + process.env.PATH += vendorDirectory */ + driver = await new Builder().forBrowser('firefox').build(); }) - - afterEach(async function() { - + afterEach(async function () { + await driver.quit() }) - - it('with valid credentials', async function() { - + it('with valid credentials', async function () { + await driver.get('http://the-internet.herokuapp.com/login') + await driver + .findElement({ id: 'username' }) + .sendKeys('tomsmith') + await driver + .findElement({ id: 'password' }) + .sendKeys('SuperSecretPassword!') + await driver.findElement({ css: 'button' }).click() + assert( + await driver.findElement({ + css: '.flash.success' + }).isDisplayed(), 'Success message not displayed' + ) }) -}) +}) \ No newline at end of file