草庐IT

jest-jasmine

全部标签

javascript - Jasmine Spies.and.stub 方法

我一直在通读Jasmine文档,并且一直在努力理解Spies.and.stub方法的实际作用。英语不是我的母语,所以我什至不知道“stub”这个词的实际含义,也没有我的语言的翻译。在文档中它说:Whenacallingstrategyisusedforaspy,theoriginalstubbingbehaviorcanbereturnedatanytimewithand.stub.describe("Aspy",function(){varfoo,bar=null;beforeEach(function(){foo={setBar:function(value){bar=value;

javascript - Jasmine 单元测试 - 测试对象的未定义属性

我有以下声明expect(A.["BAR"].name).toEqual("foo");由于我的对象A具有顶级属性“BAR”并且bar具有值“foo”通过。我想测试我的结构以确认属性“NONEXISTINGPROP”没有被定义。例如expect(A.["NONEXISTINGPROP"].name).not.toBeDefined();不过我好像明白了"TypeError:A.[NONEXISTINGPROP]isundefined"在jasmine测试运行器中,这正是我想要确认的。知道为什么Jasmine在哭。我希望它能通过这个。非常感谢 最佳答案

javascript - VS Code 调试器中的 Jest + Babel 导致断点移动

我正在尝试使用babel、jest和vscode调试一个简单的项目。当我设置一个断点然后开始调试时,我的断点跳来跳去,不再是我开始时的位置。可以在此处查看样本repo-https://github.com/RyanHirsch/starter-node我已经更新了我的launch.json以包含{"name":"Jest","type":"node","request":"launch","program":"${workspaceRoot}/node_modules/jest/bin/jest.js","stopOnEntry":false,"args":["-i","${file}

javascript - 使用 Jest 和 Webpack 别名进行测试

我希望能够在使用jest时使用webpack别名来解析导入,并且最好引用webpack.aliases以避免重复。开Jestsession:"jest":{"modulePaths":["src"],"moduleDirectories":["node_modules"],"moduleNameMapper":{"^@shared$":"/shared/","^@components$":"/shared/components/"}},Webpack别名:exports.aliases={'@shared':path.resolve(paths.APP_DIR,'shared'),'@

javascript - 您如何使用 Resharper 调试 Jasmine 测试?

在VisualStudio2012中使用Resharper运行Jasmine测试时,我找不到调试(遍历)JavaScript代码的方法。我尝试使用浏览器(Chrome)运行测试,但测试运行器会在测试后立即关闭端口已运行,因此我无法在代码中放置断点。还尝试在InternetExplorer中运行并在VisualStudio中放置断点,但它不会附加到进程。我的测试有很多///reference脚本,Resharper会自动将其包含在测试运行程序中,但我不想为我想要调试的每个测试手动执行此操作。请帮助我理解这一点。如果您的jasmine测试失败了,那么您如何调试它?

javascript - Jasmine 测试一个 promise.then 函数

我尝试使用Jasmine测试我的应用程序并遇到以下问题:我将在我的promise的then函数中计算一些东西。这就是我需要测试我的代码的地方。这是我的Controller的代码:TestCtrl.$inject=["$scope","TestService"];/*ngInject*/functionTestCtrl($scope,TestService){$scope.loadData=function(){TestService.getData().then(function(response){$scope.data=response.data;$scope.filtered=$

javascript - Jasmine 期望逻辑(期望 A OR B)

如果满足两个期望之一,我需要将测试设置为成功:expect(mySpy.mostRecentCall.args[0]).toEqual(jasmine.any(Number));expect(mySpy.mostRecentCall.args[0]).toEqual(false);我希望它看起来像这样:expect(mySpy.mostRecentCall.args[0]).toEqual(jasmine.any(Number)).or.toEqual(false);文档中是否遗漏了任何内容,或者我是否必须编写自己的匹配器? 最佳答案

javascript - 如何获取在 jest mock 函数中调用的参数?

如何获取在jestmock函数中调用的参数?我想检查作为参数传递的对象。 最佳答案 只需使用mockObject.calls。就我而言,我使用了:constcall=mockUpload.mock.calls[0][0]这是documentationaboutthemockproperty 关于javascript-如何获取在jestmock函数中调用的参数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.

javascript - Jasmine toHaveBeenCalledWith 部分匹配

有了Jasmine,我可以监视方法并找出参数。我希望能够调用toHaveBeenCalledWith(something,anything)。假设我想监视方法.on(event,callback)。我只关心event是否被监听,而不是实际的回调标识是什么。是否可以在不编写自定义匹配器的情况下执行此操作?我没有看到一个。 最佳答案 尝试toHaveBeenCalledWith(jasmine.any(Object),jasmine.any(Function)) 关于javascript-J

javascript - 我如何使用 Jest 来监视方法调用?

我最近想测试一些自定义方法是否在React组件的componentDidMount方法中被有条件地调用。componentDidMount(){if(this.props.initOpen){this.methodName();}}我使用Jest作为我的测试框架,其中包括用于模拟/spy的jest.fn()。我读过,通过执行以下操作,用Sinon进行测试会相当简单:sinon.spy(Component.prototype,"methodName");constwrapper=mount();expect(wrapper.instance().methodName).toHaveBee