问题标签 [gwtmockito]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1695 浏览

gwt - GWTMockito UnsatisfiedLinkError

我已经完成了我的大部分 GWT 测试 MVP 风格,没有测试小部件。我希望能够构建更复杂的小部件并在不使用GwtTestCase(慢)的情况下很好地测试它们。

出于好奇,我尝试了一个非常简单的测试。给定一个非常简单的小部件,有点像这样(这不是我的确切类,只是一个简化的示例):

我正在使用一个 GWTMockito 测试,有点像这样:

我立即得到:

你会注意到我没有使用测试运行器——我尝试过,但我正在测试它的项目使用的是 JUnit 4.4,测试运行器似乎不适用于 JUnit 4.4。如果我使用 GwtMockitoTestRunner,我会得到:

基于另一个堆栈溢出问题和快速调查,我倾向于认为这与该项目中使用的 JUnit 版本有关。GwtMockito 使用BlockJunit4ClassRunner,标记为@since 4.5。

那么——这个测试是 GWTMockito 应该帮助的吗?我对 GWTMockito 完全陌生,所以这很容易成为一个简单的误解,但我想理解。

Composite我可以使用 GWTMockito 来测试使用/由较小的小部件构建的复杂小部件IsWidget吗?GWTMockito 不应该帮助我解决这个 JSNI 问题,还是我误读了什么?仅仅是因为我没有使用测试运行器吗?

0 投票
1 回答
251 浏览

java - 是否可以通过 JUnit 测试使用 uiBinder XML 元素的方法?

这是我的问题:

我有一个方法叫做desactiveNavLinks使我的sideBarContainer(HTMLPanel)中的所有小部件都失效,这个方法非常有效。所以这是我的 uiBinder XML 的代码:

MainSideBarImpl.ui.xml :

我想在 MainSideBarImpl.java 中测试的方法:

这是我的单元测试方法:

看起来这个类没有用 UiBinder 进程实例化,所以我的问题是:

有没有办法仅使用 JUnit 测试 UiBinder 小部件,或者唯一的方法是使用 GwtTestCase 测试?

0 投票
1 回答
528 浏览

java - GwtMockito:有没有办法测试 Window.open()?

我想测试我的调用Window.open(String)是否使用正确的 URL(下载文件)。

除了像这样使用部分模拟之外,还有什么更好的方法吗?

在哪里openWindow(String)尽可能简单MySUT

GwtMockito 是否为您提供了一些东西来测试执行本机 javascript 的方法,例如Window.open(String)

0 投票
2 回答
744 浏览

unit-testing - Mockito验证方法没有给出一致的结果

我正在学习 GwtMockito,但在我的一项测试中无法获得一致的 verify() 方法。

我正在尝试测试我的应用程序正在触发正确的 GwtEvents。所以我在@Before 方法中像这样模拟了事件总线:

此测试按预期通过:

我想强制测试失败只是为了知道它运行正确。所以我把它改成了这个,它仍然通过:

这对我来说似乎很矛盾。所以我删除了第一个测试:

最后我添加了一个不相关的事件,应该导致它失败

我没有找到任何解释正在发生的事情的文档。ErrorOccurredEvent 和 ModelCreatedEvent 都扩展了 GwtEvent,并且已经在手动测试中得到验证。我是否错误地测试了我的 EventBus?如果是这样,有什么更好的方法来解决它?

更新

我做了一些额外的实验。这似乎是我在使用 Mockito 匹配器时遇到的问题。当我让测试失败时,异常会报告方法签名,eventBus.fireEvent(<any>)因此它似乎没有考虑到我传递给 any 方法的不同类。尚不确定该怎么做,但将其包括在此处以供其他研究此问题的人使用。

0 投票
2 回答
227 浏览

gwt - GWT.create 和包装现有的 html 元素

是否可以使用而不是构造函数来创建 TextBoxGWT.create并包装现有的 HTML 元素?我试过了:

以上在第 (2) 行失败,“无法设置元素两次 ...”

我需要这个才能使用 GwtMockito 并测试需要创建 TextBox 的组件。

谢谢!

0 投票
1 回答
78 浏览

gwt - 无法在 gwtmockito 中调试 GWT 本机代码

我有一个 GwtMockitoTestCase,调试器似乎没有进入任何普通的 GWT 类,如 Widget、ResizeLayoutPanel 等。但是,当在 DevMode 中运行相同的代码时,调试器会正确执行该代码。

这是否与在 JRE 中运行的 GWT 有关?如果不是,那可能是我的类路径在某种程度上是错误的吗?或者 gwt-user jar 没有调试信息?

我也尝试过扩展一个 GWT 类:

第 (1) 行的断点正在工作,但按 F5,它不会进入 ResizeLayoutPanel 的 setWidget 方法。

谢谢!

0 投票
1 回答
182 浏览

code-coverage - 使用 GwtMockito 报告的错误代码覆盖率

为什么EclEmma(JaCoCo based)在 Eclipse 中错误地报告代码覆盖率,而使用GwtMockitoTestRunner?

查看它的源代码,它确实安装了自己的类加载器并使用Javassist library. 这会影响代码覆盖工具吗?

0 投票
1 回答
331 浏览

java - GwtMockito - 许多按钮的单击处理程序

我对 GwtMock 和单击处理程序有疑问。

在我的单元测试中,我有一个带有 ClickHandler 和 Button 的字段:

@GwtMock 私有 ClickHandler clickHandler;

我的 setUp 方法如下所示:

我的测试看起来像:

我想测试的代码看起来像(我从构造函数调用这个方法):

问题是,当我运行单元测试时,我在按钮“ChangeStatus”上制作了一个点击事件,但我想在“Clear”按钮上制作一个点击事件

当我更改声明处理程序的顺序时有趣的是,我可以通过“清除”按钮调用代码

如何解决这个问题呢?如何在特定按钮上调用点击事件?

0 投票
1 回答
213 浏览

unit-testing - GWT Mockito and TestNG

How to use GWT Mockito found here GWT Mockito in parallel with TestNG to test GWT methods ?

Edit:8/5/2015

I have searched over the internet, and i found that GWT Mockito is only used with Junit 4, our company uses TestNG as standard, so we need to integrate GWT Mockito with TestNG to follow company's standard

0 投票
0 回答
98 浏览

unit-testing - 使用 GWTMock 和 Mockito 时模拟 @UiField

我正在使用 GWT2.7,我的视图是这样的:

为此,我编写了一个 Mockito 测试用例,如下所示:

问题是“searchValueField”没有被嘲笑并且为空。因此,当 mockito 尝试使用构造函数为 InContextSearchView 创建对象时,它会抛出空指针异常。我不应该接触原始代码。此外,如果可以提供解决方案,则不能使用 PowerMock。

我究竟做错了什么?如何初始化 @UiField 以避免空指针异常?