小编mAu*_*mAu的帖子

JavaFX 2的GUI测试框架

我目前正在阅读" 测试引导的面向对象软件"这本书,该书对测试驱动开发进行了很好的介绍.

一个缺点是通过本书开发的代码基于Swing.对于我的下一个项目,我想使用Java FX 2,我想知道是否有任何GUI测试框架呢?本书介绍了windowlicker,它只允许测试Swing应用程序.

testing javafx gui-testing javafx-2 javafx-8

12
推荐指数
5
解决办法
2万
查看次数

如何在运行calabash测试时模拟后端交互

我正在为现有应用程序整合黄瓜测试阶段.该应用程序与后端进行大量交互.最简单的情况是注册用户.

为了使测试可重复,我不能违背(真正的)后端(出于几个原因,一个人无法使用相同的电子邮件注册两个用户).

我想知道我有哪些选项可以模拟后端行为并提供模拟响应.对于单元测试,我知道Nocilla和其他几个框架.当然,将它们集成在一起不适用于葫芦测试.

一种替代方案是运行一个真正的服务器,我从葫芦测试中控制它来控制网络.但这似乎有点矫枉过正.另一个选择是在calabash目标中有模拟对象,我可以通过calabash后门机制控制它.

我怀疑这不是唯一的选择.所以我的问题是:有更优雅的方式吗?

testing ui-testing ios calabash

7
推荐指数
1
解决办法
940
查看次数

阻止并保留周期

一个小问题:为什么Xcode抱怨listing 1会导致保留周期,而listing 2不是?在这两种情况下_clients都是一个int实例变量.在listing 2它被分配0init方法.

背景信息:我想在块中执行循环,只要至少有一个客户端从iPhone加速度计请求更新,我将发布到redis频道.如果没有剩余客户端,则循环将退出并停止发布加速计数据.

Listing 2来自我写的一个小测试应用程序来验证我的想法是否有效.Listing 1在实际项目中实施.

清单1

- (id)init {
  self = [super init];

  if (self) {
    _clients = 0;

    /**
     * The callback being executed
     */
    _callback = ^ {
      while (_clients > 0) { // Capturing 'self' strongly in this block is likely to lead to a retain cycle
        NSLog(@"Publish accelerometer data to redis (connected clients: %d)", _clients);
      } …
Run Code Online (Sandbox Code Playgroud)

block objective-c ios

6
推荐指数
2
解决办法
1185
查看次数

解散模态视图控制器堆栈

给出以下视图控制器布局.

查看控制器布局

我们通过首先呈现构建模态视图控制器的堆叠BA,然后呈递CB.根据Apple文档dismiss(animated:completion:),调用它A应该实际上C以动画方式关闭最顶层的视图控制器(在这种情况下)和所有没有动画的中间视图控制器.但是,C如果没有动画就会被解雇,并B以动画方式被解雇.

在GitHub上设置了一个Xcode项目,它复制了这种行为.我错过了什么,或者我误解了这里的文档?

cocoa-touch uikit ios

5
推荐指数
2
解决办法
1308
查看次数

原型和对象创建

最近我试图获得原型链的技术方面.现在我有一些关于对象实例化的问题.

请考虑以下代码:

var Foo = function(s) {
  this._bar = s;
};

var fooInst = new Foo('test');
Run Code Online (Sandbox Code Playgroud)

现在当我检查创建的对象时,然后:

Foo.prototype === Function.prototype; // true

fooInst.prototype === ?
fooInst.prototype.prototype === Object.prototype; // true
Run Code Online (Sandbox Code Playgroud)

我想知道,fooInst.prototype到底是什么.在铬合金检查它似乎是某种Fooconstructor性能.但是我读到的关于原型的所有资料都说明fooInst.prototype === Foo.prototype应该是真的.

所以我的问题是:JS如何处理原型链.我打电话到底发生了什么new Foo.

提前致谢!

编辑

于是我发现,(在Chrome)Object.getPrototypeOf(fooInst) === Foo.prototype;true,但Object.getPrototypeOf(fooInst) === Object.getPrototypeOf(Foo)false.为什么?

javascript inheritance object prototype-programming

3
推荐指数
1
解决办法
540
查看次数