2017-02-22 93 views
1

我是新來的量角器。無法在控制檯日誌中打印定位器(webelement)

我聲明瞭一個元素作爲變量,如:

txtSearch : element(by.xpath('//input[@type="search"]')), 

在某些時候,我想記錄的定位:

var clickOn = function(webElement) 
{ 
    webElement.click(); 
    console.log("Successfully clicked on the " + webElement); 
}; 

我打電話從規格此功能類似的文件 - clickOn (txtSearch)

Console.log我越來越喜歡 - Successfully clicked on the [object Object]

請在下面找到所需的詳細信息:

節點版本:7.5.0

量角器版本:5.1.1

器瀏覽器:Chrome的

量角器配置文件:

exports.config = { 
     capabilities: { 
      browserName: 'chrome', 
      }, 
    onPrepare: function(){ 
     jasmine.getEnv().addReporter(reporter); 

     global.isAngularSite = function(flag) { 
      browser.ignoreSynchronization = !flag; 
     }; 
     browser.manage().timeouts().setScriptTimeout(60000); 
     browser.driver.manage().window().maximize(); 
    }, 


    seleniumServerJar: '../../protractor/selenium/selenium-server-standalone-2.52.0.jar', 
    chromeDriver: '../../protractor/selenium/chromedriver_2.27.exe', 
    directConnect: true, 
    framework: 'jasmine2', 
    seleniumAddress: 'http://localhost:4444/wd/hub', 
    specs: ['../PoC_Protractor/spec.js'], 

    jasmineNodeOpts: { 
     showColors: true, 
     defaultTimeoutInterval: 600000, 
     isVerbose: true 
    } 

我試着用webElement.locator().toString()但throwing-

失敗:webElement.locator不是一個函數

+0

請您檢查我的答案在.. toString()應該工作..你可以更新與你在那個前面嘗試的問題 – AdityaReddy

+0

[量角器控制檯日誌]的可能重複(http://stackoverflow.com/questions/19941739/protractor-console-log) – Xotabu4

+0

[如何在量角器中打印webelement?]的可能的副本(http://stackoverflow.com/questions/42267387/how-to-print-the-webelement-in-massractor) –

回答

0

您可以隨時輸出定位器用於在使用webElement.locator().toString()。檢查下面的代碼片斷的輸出。

量角器規格:

describe('Locator testing by model', function(){ 
    it('automate user register form', function(){ 
     browser.get('http://www.way2automation.com/angularjs-protractor/registeration/#/login'); 
     var search = element(by.model('Auth.user.name')) 
     console.log(search.locator()) 
     console.log("Successfully clicked on the " + search.locator().toString()); 
     console.log(search.locator().toString()) 
    }); 
}); 

輸出:

[14:01:48] I/local - Starting selenium standalone server... 
[14:01:48] I/launcher - Running 1 instances of WebDriver 
[14:01:49] I/local - Selenium standalone server started at http://10.96.61.119:56341/wd/hub 
Started 
{ findElementsOverride: [Function], toString: [Function] } 
Successfully clicked on the by.model("Auth.user.name") 
by.model("Auth.user.name") 
. 


1 spec, 0 failures 
Finished in 0.942 seconds 

[14:01:53] I/local - Shutting down selenium standalone server. 
[14:01:53] I/launcher - 0 instance(s) of WebDriver still running 
[14:01:53] I/launcher - internet explorer #01 passed 
+0

對不起。我仍然收到錯誤。這裏下面是我的代碼 var type = function(webElement,data)webElement.clear(); console.log(「Data」+ data +「已成功輸入」); ()=> {「webElement.locator()。toString()」上的成功輸入數據「+ data +」); –

0

嘿,好像你可能不會解決正確的方式承諾,請嘗試使用 -

webElement.click().then(function(element){ 
     console.log(""Successfully clicked on the " + element); 
}; 
相關問題