- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以这是一个相当“大”的问题,但我想要完成的是以下内容:
我有一个在 tomcat 上运行的 Spring 应用程序、MVC、JDBC (MySQL) 和 JSP。
我的目标是使用适当的方法测试整个“堆栈”。
到目前为止,我所拥有的是 Junit 使用 Selenium 来模拟与应用程序交互的实际用户(为此需要一个虚拟帐户),并执行不同的验证,例如,查看页面中是否存在元素,查看数据库中是否存在具有特定值或值是否与数据库匹配。
第一个问题是,这实际上是在使用数据库,因此很难测试某些场景。我真的很想能够模拟数据库。让它模拟特定的帐户配置、数据状态等
第二个问题是考虑到我使用的是数据库中的数据,并且数据在不断变化,很难预测行为,因此很难正确断言
我查看了 Spring Test,但它允许在 servlet 容器外进行测试,因此无法进行 JSP 和 Javascript 测试。
我看到了 DBUtils 文档,但不确定在这种情况下它是否对我有帮助
因此,我想向我的开发人员同事们寻求提示:
最佳答案
我已经开始使用有序的 Autowiring 功能来支持这种 stub 。
这基本上是我从过去使用的 Seam 框架中接手的一个想法,但我在 spring 中找不到类似的东西。
这个想法是有一个优先级注释(fw,app,mock,...)将用于解析 Autowiring bean 的当前实现。这在 xml 中已经很容易了,但在 java config 中则不然。
因此,我们的普通存储库 bean 具有应用程序优先级和测试包,这些类具有模拟优先级。如果两者都在类路径中,则 spring 通常会失败并出现重复的 bean found 异常。在我们的例子中,扩展的 beanfactory 只接受具有最高优先级的 bean。
我不确定是否可以直接使用 spring 的顺序注释,但无论如何我更喜欢“定义明确”的优先级范围,因此我们的开发人员会清楚这是什么意思。
!虽然这是一个很好的 stub 方法,但用于测试的 beans 我不会用它来替换数据库定义,而是使用像 hsql 这样的内存数据库,就像之前提到的一些答案一样。 !
关于spring - Spring Framework端到端测试的好策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15125832/
我有一个使用 css 列的下拉菜单,当我使用 jquery slide() 时,它会调整下拉框的大小,并重排内容直到达到完整高度。 这是一个工作示例 https://codepen.io/peterg
我有一个带有嵌套 ScrollViewer 的 Expander,如下所示: 代码(简化版)
我想在所有 ajax 调用之后调用一些 javascript 函数。我知道如何调用每个单独的 ajax 调用中的函数,如下所示: function xyz() { if (window.XMLHttp
我想将值从应用程序端传递到 api。在此 api 调用中传递图像、名字、电子邮件、电话和位置。在 Debug模式下,检查值不会被传递。 代码下方 File file = null;
我正在尝试在使用reportlab生成的pdf中的表格后插入分页符,我正在使用以下函数生成pdf: def render_to_pdf(template_src, context_dict): t
CBPeripheralManager 是否有推荐的方法来终止连接。到目前为止我发现的最好的方法就是干脆不响应动态值,然后 BLE 堆栈似乎关闭了连接,但这似乎很粗糙。 一定有更好的方法吗? 最佳答案
我的 API 的 REST 端位于以下地址:http://test.jll.aplikacje-dedykowane.pl/rest/warehouse/all 。现在,我尝试返回在此页面准备的 JS
我有以下 CPP 代码。我想做的是,当我的 native 端发生错误时,我会通知 Java 该错误。我用了How can I catch SIGSEGV (segmentation fault) an
限制对象的方法之一是像这样给函数添加限制 def ten_objects(): obj = Model.objects.all()[0:10] # limit to 10 retur
我目前在电信公司实习,这是一个专业,也是本科生。我有很多选择。据我所知,我知道独立应用程序端的 c、c++、c#、java 语言,在移动端我尝试进入 android 世界,也知道 php、mysql、
我想让我的边框底部看起来像这样: 有一个 flex 的末端。目前它看起来像这样: 我尝试使用的 CSS 是 border-bottom-right-radius: 10px;。代码如下所示:
我有一个 Flutter 项目,突然间,据我所知,我没有做任何特别的事情..Android 端开始显示错误,我完全迷路了,我完全不知道哪里出了问题,也不知道为什么会这样。 这就是我打开 android
我有一个自定义对象列表 (List) 。我需要将此数据发送到 React Native 端以显示在平面列表中。我该怎么做?这个列表出现在 类 NativeToReact(reactContext:Re
我有这个代码: #if defined(NOT_STANDALONE) JNIEXPORT void JNICALL sumTraces (JNIEnv* env, jclass caller,
我有一个定义一对多模型关系的 Django 应用程序。模型如下所示: from django.db import models # Create your models here. class Str
我有以下代码,它根据 IFrame 内容的大小调整 IFrame 的大小: function setIframeHeight(id) {
如何创建自定义过滤器 angularjs javascript Controller 端?我想通过 SegmentId 在名为段的数组中搜索,以创建过滤器,该过滤器通过 SegmentId 在段数组搜
我的代码在 netbeans 8.0.2 中我几乎尝试了所有方法,但没有结果。请帮助我。如何在 netbeans 中显示它? 最佳答案 您只需单击源包(源文件),它就会显示您的项目文件。 关于java
我想这是纯 C++ 问题和 OpenGL 问题之间的一种交叉。我有一个统一的缓冲区,并在其中分配 sizeof(ShaderData) 字节的空间。我在着色器的 GPU 端使用 std140 布局。
我对 Hadoop 中 reduce 端的文件合并过程的理解有问题,因为它在“Hadoop:权威指南”(Tom White)中有所描述。引用它: When all the map outputs ha
我是一名优秀的程序员,十分优秀!