问题标签 [gwttestcase]
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.
gwt - 在 GWT 中创建 WeakMap 包装器实现——出现错误
我最近一直在研究即将推出的 js(harmony)weakmap 支持,它将解决我目前遇到的许多复杂问题。幸运的是,有一个 shim ( https://github.com/Benvie/WeakMap ) 具有很好的浏览器支持,这让我开始实现 GWT 包装器。
我觉得这应该很简单,但是我的单元测试抛出错误。由于我对 JSNI 很陌生,我想它可能遗漏了一些微不足道的东西:
这是我的 GWT 课程:
这是我的测试:
这是我得到的错误:
还:
- 我确信 javascript 被正确包含(我已经完成了足以知道的部分)
- setup() 方法正确地创建了一个weakmap 对象并将其分配给nativeWeakMap javascript 对象。我可以将它打印到标准输出,所以我知道它不为空。
有任何想法吗?这将是 GWT 的一个很好的补充!
gwt - 如何使用 Intellij 12 制作和运行基于 GWTTestCase 的测试?
几个月来我已经多次尝试这样做,但我没有任何运气。我找到了谷歌关于如何通过命令行和 Eclipse 设置 GWTTestCase 测试的文档,但没有关于如何使用 IntelliJ 进行设置的文档。当我尝试像普通的 J 单元测试一样在 IntelliJ 中激发 GWTTestCase 测试时,我得到了一堆错误。我假设 Google Eclipse 插件可能正在做某种魔术来使测试在 Eclipse 中工作,所以我什至不确定我想做的事情是否可行。
gwt - Does History.back() work in a GWTTestCase?
Does History.back() work in a GWTTestCase?
I have tried verifying the current token immediately after History.back() call and also after a delay using a Timer but it doesn't seem to change. The onValueChange() method doesn't seem to be called either.
I did a Google search for the issue and found a few posts that suggest others have experienced a similar problem but some are dated 2010. I did find one post where Thomas Broyer responded to one person that he observed the same but I am unable to find that post again.
Has anyone had success in testing code involving History.back() from GWTTestCase? If so, I am most likely doing something wrong. If it is a known issue or intended behavior I would appreciate knowing that so that I don't spend any more time on this.
java - 如何使用 GwtTestCase 使用 ui binder 测试 gwt 复合组件?
我正在尝试使用 GwtTestCase 测试我的 gwt 项目。
但我无法创建复合组件的实例。
这是代码和堆栈跟踪...
Login.java(我的复合组件)
Login.ui.xml(ui binder xml 内容)
LoginTest.java(这是我的 Gwt TesCase)
错误堆栈跟踪
我做的测试对吗?
配置中还需要什么?对于没有 ui 活页夹的类,测试用例可以成功运行。
GWT.create(...)
并且本机 javascript 代码也可以正常工作。
google-app-engine - 运行 GWTTestCase 时出现“java.lang.VerifyError:无法从最终类继承”
我刚刚编写了我的第一个 GWTTestCase,但运行它总是给我一个 VerifyError。这是我的一个伟大测试套件的胚胎:
为了完整起见,我将 Google AppEngine 和 GWT 一起使用,我认为这可能与 AppEngine 的安全沙箱有关。
正在加载的类是“com.gargoylesoftware.htmlunit.SocksSocketFactory”。
完整的堆栈跟踪在这里:
我尝试排除给定课程的 GAE 验证,但没有成功。我不确定排除验证是否足够,以及是否可以为 jar 中的文件设置验证排除规则。
java - 无法使用 ant 运行 GWTTestCase 测试
我根本无法成功运行GWTTestCase
测试。我正在使用GWT 2.6.1
, JUnit 4.11
, ant 1.8.2
. 我在 github 上创建了示例存储库。
Ant 目标比运行测试(也许在这里很明显):
我用 运行测试ant test.gwt
,我得到的输出是:
有什么想法我可能做错了吗?我也试过JUnit 3.8
- 没有帮助。也许缺少.*jar
文件或版本不正确?
gwt - GWTTestCase 会话不再工作?
我们有许多使用 GWTTestCase 的单元测试,其结构如下:
1) 请求登录。
2) 在响应处理程序中,进行需要登录的第二次调用。
这一切都可以正常工作,但从 2.5.1 升级到 2.7.0 后,测试失败并出现“需要登录”错误。看来问题在于通话之间的会话不再持续(丢失或未连接)。特别是,我们已经验证了登录调用有效,正确设置了会话。
还有另一个测试更新本地化选择的会话数据,但同样的模式也失败了。
简化的代码片段:
我们能够通过在测试套件中添加以下内容来部分解决这个问题:
这可能表明它与线程有关?
我了解 GWTTestCase 通常不再是首选的测试方法;这是现有的测试机构。“使用 Selenium”或其他建议并没有真正的帮助。
gwt - 使用 GwtTestCase 使用 ui binder 测试 GWT 复合组件?
我正在为使用 UiBinder 创建的组件编写一个扩展 GwtTestCase 的简单测试类,并运行mvn gwt:test
失败,如下所示。
问题似乎类似于:如何使用 GwtTestCase 使用 ui binder 测试 gwt 复合组件?; 未使用 UiBinder 创建的组件的其他测试在当前项目配置下运行良好。user.agent
包含gecko1_8
. _ 我尝试从 IntelliJ 运行,-Dgwt.args="-war www-test -runStyle HtmlUnit:IE8"
但遇到了另一个问题 ( net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot read property "__gwtDevModeHook:com.mypackage.MyEntryPoint.Junit"
)。
java - 我是否需要为使用 GWTTestCase 创建的每个单元测试方法添加“测试”前缀?
我正在学习如何在 GWT 中执行单元测试。所以我创建了一个扩展 GWTTestCase 类的类并在其中编写测试方法。
问题是,如果除了继承的“getModuleName”方法之外,我什至没有在这个类(公共或私有)中的一个函数前面加上“test”这个词,我会得到一个“初始化错误”。
现在我做错了什么还是添加这个前缀是一个规则?如果它实际上是一个规则,这是什么原因?
“初始化错误”的堆栈跟踪:-
json - 将 JSON 解析为带有转义字符的字符串,用于 GWT 测试用例
我对 JSON 文件提出了疑问。
因此,我们正在为 GWT 应用程序构建一个测试用例。它提供的数据位于从 SQL 数据库生成的 JSON 文件中。
在测试处理数据的方法时,我们从字符串文件中保存的源中进行测试,因此为了保持原始数据的完整性,我们只需将原始 JSON 值克隆到带有转义序列的字符串中。
这样做的结果是,如果 JSON 条目显示如下:
解析结果会像这样出现,以便我们的工具能够识别它们:
我们现在的做法是获取每个 JSON 对象并将其放在 IntelliJ 中的 "" 之间,它会自动解析所有双引号以转义序列。如果我们只想要几个对象,这没关系,但如果我们想要整个数据集怎么办?
所以我的问题是,有没有人知道或已经创建了一个开源脚本来自动化这个繁琐的任务?