freeCodeCamp/curriculum/challenges/english/06-information-security-and.../quality-assurance-and-testi.../run-functional-tests-using-...

2.5 KiB

id title challengeType
587d8250367417b2b2512c5d Run Functional Tests using a Headless Browser II 2

Description

As a reminder, this project is being built upon the following starter project on Glitch, or cloned from GitHub. This exercise is similar to the preceding. Look at the code for directions. Follow the assertions order, We rely on it.

Instructions

Tests

tests:
  - text: All tests should pass
    testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=functional&n=5').then(data => { assert.equal(data.state,'passed'); }, xhr => { throw new Error(xhr.responseText); })
  - text:  assert that the headless browser request succeeded
    testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=functional&n=5').then(data => { assert.equal(data.assertions[0].method, 'browser.success'); }, xhr => { throw new Error(xhr.responseText); })
  - text: assert that the text inside the element 'span#name' is 'Amerigo'
    testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=functional&n=5').then(data => { assert.equal(data.assertions[1].method, 'browser.text'); assert.equal(data.assertions[1].args[0], '\'span#name\''); assert.equal(data.assertions[1].args[1], '\'Amerigo\'');}, xhr => { throw new Error(xhr.responseText); })
  - text: assert that the text inside the element 'span#surname' is 'Vespucci'
    testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=functional&n=5').then(data => { assert.equal(data.assertions[2].method, 'browser.text'); assert.equal(data.assertions[2].args[0], '\'span#surname\''); assert.equal(data.assertions[2].args[1], '\'Vespucci\'');}, xhr => { throw new Error(xhr.responseText); })
  - text: assert that the element 'span#dates' exist and its count is 1
    testString: getUserInput => $.get(getUserInput('url') + '/_api/get-tests?type=functional&n=5').then(data => { assert.equal(data.assertions[3].method, 'browser.element'); assert.equal(data.assertions[3].args[0], '\'span#dates\''); assert.equal(data.assertions[3].args[1], 1);}, xhr => { throw new Error(xhr.responseText); })

Challenge Seed

Solution

// solution required