Reputation: 1319
I've already tried a lot of codes but nothing passed the tests.
Usually the test is fail when it tried to read this verification or it receive "false" instead of "true".
All the script is below:
describe('LiveSite Portal - Client share a document ', function() {
it('LiveSite - Home Page', function() {
liveSiteHome();
});
it('LiveSite Portal - Client share a document - Load new document', function() {
element(by.xpath("//div[@class='actions-row']//a[.='Share Document']")).click();
browser.sleep(2000);
expect (element(by.xpath("//div[@class='upload-section']/div[1]/div[2]/div")).isPresent()).toBe(true);
captureScreen("documentForm");
browser.sleep(2000);
element(by.css("input.file-input.upload-file-input")).sendKeys("C:\\automation\\myDocument.docx");
browser.sleep(3000);
var reviewElement = element(by.bind('selectedFiles[0].name'));
// expect (reviewElement.getText('myDocument.docx').isPresent()).toBe(true);
expect(reviewElement.getText()).toEqual("myDocument.docx");
captureScreen("documentLoaded");
browser.sleep(2000);
element(by.xpath("//div[@class='upload-section']/div[2]/div[2]/textarea")).sendKeys("Hi This is my document.");
element(by.name("email")).sendKeys("[email protected]");
element(by.name("first_name")).click();
browser.driver.sleep(3000);
//expect(element(by.css("span.welcome-back")).isPresent()).toBe(true);
captureScreen("documentFormReturenedClient");
browser.sleep(2000);
element(by.css("input.btn")).click();
browser.sleep(2000);
// expect (element(by.linkText("Document Submitted Successfully")).isPresent()).toBe(true);
captureScreen("documentSubmittedSuccesfully");
browser.sleep(2000);
element(by.xpath("//div[@class='actions']//a[.='Home']")).click();
browser.sleep(2000);
expect (browser.getCurrentUrl()).toContain('www.vcita.com/v/');
});
});
This is my last attempt:
var reviewElement = element(by.bind('selectedFiles[0].name'));
expect(reviewElement.getText()).toEqual("myDocument.docx");
Is anyone know what is wrong with this?
The error from Protractor is below:
firefox #1] PID: 10036
[firefox #1] Specs: c:\automation\tests\document.js
[firefox #1]
[firefox #1] Using the selenium server at http://localhost:4444/wd/hub
[firefox #1] LiveSite Portal - Client share a document
[firefox #1] LiveSite - Home Page - pass
[firefox #1] LiveSite Portal - Client share a document - Load new document - f
ail
[firefox #1]
[firefox #1]
[firefox #1] Failures:
[firefox #1]
[firefox #1] 1) LiveSite Portal - Client share a document LiveSite Portal - C
lient share a document - Load new document
[firefox #1] Message:
[firefox #1] TypeError: undefined is not a function
[firefox #1] Stacktrace:
[firefox #1] TypeError: undefined is not a function
[firefox #1] at [object Object].<anonymous> (c:\automation\tests\document.js
:19:36)
[firefox #1] at C:\Users\idan\AppData\Roaming\npm\node_modules\protractor\no
de_modules\jasminewd\index.js:94:14
[firefox #1] at [object Object].promise.ControlFlow.runInFrame_ (C:\Users\id
an\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\l
ib\webdriver\promise.js:1877:20)
[firefox #1] at [object Object].promise.ControlFlow.runEventLoop_ (C:\Users\
idan\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver
\lib\webdriver\promise.js:1755:8)
[firefox #1] at [object Object].<anonymous> (C:\Users\idan\AppData\Roaming\n
pm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise
.js:2056:12)
[firefox #1] at goog.async.run.processWorkQueue (C:\Users\idan\AppData\Roami
ng\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\goog\async\ru
n.js:125:21)
[firefox #1] at runMicrotasksCallback (node.js:337:7)
[firefox #1] at process._tickCallback (node.js:355:11)
[firefox #1] From: Task: Asynchronous test function: it()
[firefox #1] at [object Object].<anonymous> (C:\Users\idan\AppData\Roaming\n
pm\node_modules\protractor\node_modules\jasminewd\index.js:93:33)
[firefox #1] at [object Object].<anonymous> (C:\Users\idan\AppData\Roaming\n
pm\node_modules\protractor\node_modules\minijasminenode\lib\async-callback.js:45
:37)
[firefox #1] at [object Object].jasmine.Block.execute (C:\Users\idan\AppData
\Roaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.
3.1.js:1174:17)
[firefox #1] at [object Object].jasmine.Queue.next_ (C:\Users\idan\AppData\R
oaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3.
1.js:2209:31)
[firefox #1] at [object Object].jasmine.Queue.start (C:\Users\idan\AppData\R
oaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3.
1.js:2162:8)
[firefox #1] at [object Object].jasmine.Spec.execute (C:\Users\idan\AppData\
Roaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3
.1.js:2503:14)
[firefox #1] at [object Object].jasmine.Queue.next_ (C:\Users\idan\AppData\R
oaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3.
1.js:2209:31)
[firefox #1] at onComplete (C:\Users\idan\AppData\Roaming\npm\node_modules\p
rotractor\node_modules\minijasminenode\lib\jasmine-1.3.1.js:2205:18)
[firefox #1] at [object Object].jasmine.Spec.finish (C:\Users\idan\AppData\R
oaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3.
1.js:2477:5)
[firefox #1] at [object Object].onComplete (C:\Users\idan\AppData\Roaming\np
m\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3.1.js:2504
:10)==== async task ====
[firefox #1] Error
[firefox #1] at [object Object].<anonymous> (c:\automation\tests\document.js
:7:3)
[firefox #1] at [object Object].jasmine.Env.describe_ (C:\Users\idan\AppData
\Roaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.
3.1.js:913:21)
[firefox #1] at [object Object].jasmine.Env.describe (C:\Users\idan\AppData\
Roaming\npm\node_modules\protractor\node_modules\minijasminenode\lib\jasmine-1.3
.1.js:898:15)
[firefox #1] at describe (C:\Users\idan\AppData\Roaming\npm\node_modules\pro
tractor\node_modules\minijasminenode\lib\jasmine-1.3.1.js:658:27)
[firefox #1] at Object.<anonymous> (c:\automation\tests\document.js:1:63)
[firefox #1]
[firefox #1] Finished in 19.558 seconds
[firefox #1] 2 tests, 2 assertions, 1 failure
[firefox #1]
Upvotes: 2
Views: 1011
Reputation: 473873
There is no isPresent()
function available on getText()
of an element.
You probably meant:
var reviewElement = element(by.bind('selectedFiles[0].name'));
expect(reviewElement.isPresent()).toBe(true);
If you want to verify any text to be present in a element:
expect(reviewElement.getText()).toBeTruthy();
Or, via a custom toBeNonEmptyString()
matcher provided by jasmine-matchers
:
expect(reviewElement.getText()).toBeNonEmptyString();
Or, if you want to check the text to be equal to smth, use toEqual()
:
expect(reviewElement.getText()).toEqual("My text");
Upvotes: 2
Reputation: 2502
First you need to identify the element using some locator. Refer https://angular.github.io/protractor/#/ Write a Test section
var reviewElement= element(by.xxx());
expect (reviewElement.getText('Review your information').isPresent()).toBe(true);
Please let me know if this helps!
Upvotes: 0