小编Pep*_*ito的帖子

Stryker 和 Jest 的问题

我正在用 Jest 测试 Stryker。Stryker 似乎不应用 Jest 测试。

如果我在代码中手动引入它们,这两个突变体不会通过测试,但是当我使用 Stryker 时它们会通过。

测试似乎不适用于突变体。我怎样才能让它工作?

这是我的配置:

包.json :

{
  "name": "test-stryker",
  "version": "1.0.0",
  "description": "",
  "main": "src/index.js",
  "scripts": {
    "test": "jest",
    "test-mutation": "stryker run"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "npm": "^6.0.0",
    "@stryker-mutator/javascript-mutator": "^3.3.0",
    "@stryker-mutator/jest-runner": "^3.3.0",
    "jest": "^26.0.0",
    "jest-cli": "^26.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

config.jest.js :

'use strict'

module.exports = {
  clearMocks: true,
  collectCoverage: true,
  collectCoverageFrom: [
    '**/*.js',
    '!**/reports/**/*.js',
    '!**/test/**/*.js',
    '!/node_modules/',
    '!**/*.config.js',
    '!**/*.conf.js'
  ],
  coverageDirectory: 'reports/coverage',
  testEnvironment: 'node'
}
Run Code Online (Sandbox Code Playgroud)

stryker.conf.js :

/**
 * @type {import('@stryker-mutator/api/core').StrykerOptions} …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing node.js jestjs stryker

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

在 Jest 和 jest-dom 和 jsdom 中设置窗口大小

我使用 jest-dom 和 jsdom 在 Jest 中测试窗口的高度。

使用此代码:

import '@testing-library/jest-dom'

describe('test window height'), () => {
  test('test the height'), () => {
    expect(window.innerHeight).toBe(150) // 150 is an arbitrary value for testing the test ! 
   }) 
 }) 
Run Code Online (Sandbox Code Playgroud)

结果是一个错误,说:

预期:150

收到:768

使用innerWidth,接收值为1024

太好了,这意味着可以使用 Jest 和 jest-dom 测试窗口的大小。

但是 768 和 1024 是从哪里来的呢?它是默认值吗?将永远是?它是否可配置以及如何配置?

javascript jestjs jest-dom

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

标签 统计

javascript ×2

jestjs ×2

jest-dom ×1

node.js ×1

stryker ×1

unit-testing ×1