[英]generating javascript alert in selenium using JavascriptExecutor
[英]Is there a way to return an Object from JavaScript in Java using Selenium JavascriptExecutor?
我在使用 Java 運行 JavaScript 文件時遇到問題,使用 Selenium 我登錄我的應用程序並使用 JavascriptExecutor 運行我的 JavaScript 文件,但我無法從它接收有效的返回,只有 null。
這是我的代碼片段:
public static void runJavascriptFile(ChromeDriver driver) throws Exception {
System.out.println("Start");
Object js = driver.executeScript(TestHelper.getTextFromFile("demo-client/scripts/get-test.js"));
System.out.println(js);
System.out.println("End");
}
我的js文件包含以下內容:
async function getPeople() {
let response = await fetch("https://swapi.dev/api/people/1/", { method: "GET" })
console.log("This is from my Javascript File from Java.")
return response.status;
}
let result = await getPeople();
console.log("result", result);
在這里,我可以在 Chrome 瀏覽器控制台中看到 JavaScript 文件的返回,但在 Java IDE 中我看不到: BrowserConsoleXJavaConsole
如果有人知道有效的不同方法,請幫忙!
您可以將其解析為字符串:
JavascriptExecutor jsExec = (JavascriptExecutor) driver;
String fileContent = (String) jsExec.executeScript("some js code here to get the file content");
System.out.println(fileContent);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.