使用JSP的Selenium前端

时间:2018-01-09 06:21:46

标签: java selenium jsp selenium-webdriver automated-tests

我有一个Selenium脚本,如下所示:

package TestCase;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class TestCase {

    public static void main(String[] args)
    {
        System.setProperty("webdriver.firefox.marionette","/root/Desktop/Selenium/GeckoDriver/geckodriver.exe");
        for(int i=0;i<5;i++)
        {
            WebDriver driver = new FirefoxDriver();
            driver.get ("http://cl.amtrustmobilesolutions.asia/cs/login.php");
            WebElement username=driver.findElement(By.name("user_name"));
            username.sendKeys("username");
            WebElement passsword=driver.findElement(By.name("user_password"));
            passsword.sendKeys("password");
            driver.findElement(By.xpath("//button[contains(@class,'buttonuser')]")).click();

        }
    }
}

我想使用JSP页面触发此脚本:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"

         pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  <title>Enter your name</title>
</head>
<body>

<jsp:useBean id = "TestBean" class = "TestCase.TestCase" />

</body>
</html>

但它给了我一个错误:

  

内部服务器错误

     

服务器遇到阻止它的内部错误   满足这个要求。

     

java.lang.NoClassDefFoundError:org / openqa / selenium / WebDriver

     

注意异常的完整堆栈跟踪及其根本原因是   可在GlassFish Server Open Source Edition 4.1日志中找到。

如何使用JSP页面触发Selenium脚本?

2 个答案:

答案 0 :(得分:0)

NoClassDefFoundError表示在类路径中找不到Webdriver。请将其添加到依赖项中。

同时检查主题 - How to call Java class in Jsp

答案 1 :(得分:0)

你在寻找的是什么 Scriptlet。在scriptlet中编写selenium代码,并在输入值后触发scriptlet。您还可以在scriptlet中使用输入的值。

这可能会让你开始。

https://www.javatpoint.com/jsp-scriptlet-tag