gpt4 book ai didi

java - 在 Spring MVC 应用程序中使用 Selenium WebDriver 进行前端测试

转载 作者:行者123 更新时间:2023-12-01 12:57:50 24 4
gpt4 key购买 nike

我正在开发 spring mvc 应用程序,并尝试使用 selenium web 驱动程序测试我的前端以及 Controller 和前端之间的集成测试,引用 Spring MVC test with WebDriver 。本博客建议使用 MockMvcHtmlUnitDriver 作为 Web 驱动程序实现,以便使用 spring mvc 运行前端测试,而无需部署到服务器。 MVC 工作完全正常,MockMvcHtmlUnitDriver 也可以完美处理请求,但它无法获取前端页面。

这里是我为测试编写的代码:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:application-context.xml")
@WebAppConfiguration
public class WebDriverDemoTest {

@Autowired
private WebApplicationContext context;

private WebDriver driver;

@Before
public void setup() throws Exception {
MockMvc mockMvc = MockMvcBuilders.webAppContextSetup(context).build();

this.driver = new MockMvcHtmlUnitDriver(mockMvc, true);
}

@Test
public void testFormCreation() {

this.driver.get("http://localhost:8080/wddemo/demo");
System.out.println(" - Page Title: " + this.driver.getTitle());
}}

在这里,您可以看到我正在尝试获取页面标题,但这些结果为空。

测试用例日志:

10:55:59,031 DEBUG TestDispatcherServlet:1218 - Rendering view      [org.springframework.web.servlet.view.JstlView: name 'spring'; URL [/spring.jsp]] in DispatcherServlet with name ''
10:55:59,038 DEBUG JstlView:207 - Forwarding to resource [/spring.jsp] in InternalResourceView 'spring'
10:55:59,039 DEBUG MockRequestDispatcher:67 - MockRequestDispatcher: forwarding to [/spring.jsp]
10:55:59,039 DEBUG TestDispatcherServlet:991 - Successfully completed request
- Page Title: null

在此日志中,您可以看到 mvc 已完美处理,但 Web 驱动程序未获取页面。但是,在服务器中部署并使用 HtmlUnitDriver 可以按预期完美运行。

你们觉得这有什么问题吗?

最佳答案

从您的调试中我可以看到您正在使用 JSP。

来自part 1您引用的博客文章的内容:

NOTE: Just as with Spring MVC Test, the HtmlUnit integration will work with templating technologies that do not rely on a Servlet Container (i.e. Thymeleaf, Freemarker, Velocity, etc). It does not work with JSPs since they rely on the Servlet Container.

关于java - 在 Spring MVC 应用程序中使用 Selenium WebDriver 进行前端测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23751500/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com