2016-12-22 3 views

ответ

0

Введите код try block и добавьте catch block в конце, указав variable name, чтобы получить исключение. (В данном примере это exc)

попробовать следующим образом:

try{ 
    WDS.sampleResult.sampleStart() 
    WDS.browser.get('http://jmeter-plugins.org') 
    var pkg = JavaImporter(org.openqa.selenium) 
    WDS.browser.findElement(pkg.By.id('what')) // there is no such element with id what 
    WDS.sampleResult.sampleEnd() 
} 
catch(exc){ //exc variable name 
    WDS.log.error("element not found" + exc) 
} 

в JMeter log, вы можете увидеть полный след NoSuchElementException, который поднимается при попытке найти элемент по идентификатору с значения как what, которых нет в HTML.

Примечание: используйте View Results in Table, чтобы увидеть Sampler response time.

Ссылка:

  1. https://jmeter-plugins.org/wiki/WebDriverSampler/

Ссылка Изображение:

enter image description here

0

Вы можете сделать это с помощью обычной JavaScript try block, вот пример того, принимая скриншот, когда ошибка происходит:

var pkg = JavaImporter(org.openqa.selenium) 
var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait) 
var conditions = org.openqa.selenium.support.ui.ExpectedConditions 
var wait = new support_ui.WebDriverWait(WDS.browser, 5) 
var exception = null 

WDS.sampleResult.sampleStart() 


try { 
    WDS.browser.get('http://example.com') 
    wait.until(conditions.presenceOfElementLocated(pkg.By.linkText('Not existing link'))) 
} catch (err) { 
    WDS.log.error(err.message) 
    var screenshot = WDS.browser.getScreenshotAs(pkg.OutputType.FILE) 
    screenshot.renameTo(java.io.File('screenshot.png')) 
    exception = err 
} finally { 
    throw (exception) 
} 

WDS.sampleResult.sampleEnd()) 

Не забудьте «выбросить» ошибку после того, как вы ее обработаете, иначе она будет «проглочена» и вы получите ложноположительный результат.

См. Статью The WebDriver Sampler: Your Top 10 Questions Answered для получения дополнительных советов и рекомендаций.