小编deo*_*lem的帖子

如何在模拟e2e测试时检测API修改?

我想在我们团队的项目中建立一个坚实的e2e测试基础,但我找不到这个问题的简单解决方案:

当您模拟所有调用时,检测服务器返回的对象的实际模型是否已被修改的最佳方法是什么?

您的测试仍然会通过,因为他们正在测试模型的过时版本但应用程序可能已损坏.

例如,如果一个模拟假设/api/users/1返回null,如果用户不存在,当它实际上返回一个空对象,则虽然测试可以通过,被测试的行为依赖于不正确的假设,并且因此可以以意外的方式失败.

或者也许后端以某种方式提供带有最新模型的静态json文件,而前端依赖于此?

这当然假设在后端工作的人和在前端工作的人是独立的团队.

我在这里使用Angular 1.x和Protractor,但这并不依赖于技术.

unit-testing mocking angularjs protractor e2e-testing

15
推荐指数
1
解决办法
457
查看次数

为什么Chrome会在验证前调用自动完成的网址?

我在我的网站上使用API​​向用户发送电子邮件,在测试我的电话时,我注意到我收到了两次电子邮件.

所以网址看起来像"localhost/api/sendEmail",至少在Chrome上,当我在localhost上时,我开始输入"/ap"网址会自动完成.

而且我可以在Fiddler看到Chrome(我认为那是他)实际上在我按Enter之前调用它以便发送邮件,当我按Enter时它当然是第二次发送.

这不是问题,因为它不会被最终用户直接调用,但我只是想知道第一次调用的目的是什么?Chrome是否预先调用页面以加快加载速度?它会在不同的情况下引起问题吗?可以阻止Chrome表现得像这样吗?

再一次,根本不是问题,但我只是想知道.

google-chrome autocomplete

5
推荐指数
1
解决办法
1067
查看次数

平板电脑检测问题Synchro Digital

我的同事和我必须在Android平板电脑上为公司开发和实施应用程序.我们使用Eclipse AVD开始并几乎完成了相关应用程序的开发(我们还没有收到平板电脑)并且它运行良好.

我们收到了必须安装应用程序的平板电脑,型号为:SynchroDigital INOSOP10-4.0 RES,10"带ICS,低于100欧元,非常便宜.

我们的问题:我的电脑无法识别平板电脑(WIN7,连接时无法安装驱动程序,虽然我已经在Galaxy S和Galaxy Tab上成功开发).当我激活大容量存储时,我可以访问存储空间,但它不能被识别为平板电脑,因此无法直接从Eclipse编译,设备列表中没有任何内容.

启用USB调试不会改变任何内容.
连接平板电脑时,logcat中没有活动.
在设备管理中,我在其他设备/ Android下找到了带有黄色三角形的平板电脑.制造商的网站提供"支持"部分,但没有链接到驱动程序.
试过另一台PC,结果相同.

有任何想法吗?是否有些平板电脑不允许直接从Eclipse开发?

eclipse android driver tablet detection

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

Facebook Sdk被阻止:如何检测用户是否正在使用Ghostery?

为了在Facebook Graph Api上进行调用,用户必须登录并接受我的网站上的应用程序.启用Ghostery并阻止Facebook Connect后,它无法加载sdk,我GET http://connect.facebook.net/en_US/sdk.js net::ERR_BLOCKED_BY_CLIENT在Chrome控制台中获得了很好的效果.显然它打破了这个特征.

是否有一个很好的和简单的客户端方式来检测Ghostery的阻塞,所以我可以显示一个友好的消息,要求用户将我的网站列入白名单,如果他想要完全访问这些功能?

仅供参考,我正在使用Angularjs并使用提供程序加载sdk并进行调用.这是它的样子:

function fbInit(appID) {

    (function(d, s, id) {
        var js, fjs = d.getElementsByTagName(s)[0];
        if (d.getElementById(id)){
            return;
        }
        js = d.createElement(s); js.id = id;
        js.src = "//connect.facebook.net/en_US/sdk.js";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk')); 

    window.fbAsyncInit = function() {
        FB.init({
            appId      : appID,
            cookie     : true,  
            xfbml      : true,  
            version    : 'v2.1' 
        });
    }; 
}

this.setAppID = function(appID) {
    this.appID = appID;
};

this.$get = function() {
    var appID = this.appID;
    var self = …
Run Code Online (Sandbox Code Playgroud)

javascript facebook google-chrome-extension facebook-graph-api angularjs

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