Сгенерированные снимки отличаются по значениям полей: пустая строка и неопределенная - PullRequest
0 голосов
/ 07 января 2019

Краткое описание проблемы

Мои тесты моментальных снимков Jest для некоторых компонентов React проходят локально, но без ошибок на компьютере агента сборки CI. Я удостоверился, что мои тесты выполняются с тем же кодом (подтвержденные git-хэши) и конфигурацией.

По какой-то причине локально созданные снимки получают значения "" в некоторых местах, в то время как те же снимки на хосте CI получают значение undefined.

В прошлом я сталкивался с такой же проблемой, когда версия узла на моей машине была 8.x.x, а агент сборки использовал 6.x.x. Однако теперь это не так (см. Версию ниже).

Я очень смущен: С чего мне начать расследование? ?

Версии инструмента

         Dev machine     CI build agent host
node         v8.14.0                 v8.11.1
yarn          1.12.3                   1.6.0
npm            6.4.1                   5.6.0

Журнал сбоев испытаний (выдержка)

2019-01-06T23:41:27.2918318Z   ● SelectUserDropdownComponent › should render SelectUserDropdownComponent
2019-01-06T23:41:27.2919101Z 
2019-01-06T23:41:27.2919451Z     expect(value).toMatchSnapshot()
2019-01-06T23:41:27.2920151Z 
2019-01-06T23:41:27.2920606Z     Received value does not match stored snapshot "SelectUserDropdownComponent should render SelectUserDropdownComponent 1".
2019-01-06T23:41:27.2920869Z 
2019-01-06T23:41:27.2921115Z     - Snapshot
2019-01-06T23:41:27.2921594Z     + Received
2019-01-06T23:41:27.2921763Z 
2019-01-06T23:41:27.2923351Z     @@ -122,11 +122,11 @@
2019-01-06T23:41:27.2923596Z           },
2019-01-06T23:41:27.2923949Z           "ref": null,
2019-01-06T23:41:27.2924249Z           "rendered": Array [
2019-01-06T23:41:27.2924482Z             Object {
2019-01-06T23:41:27.2924711Z               "instance": null,
2019-01-06T23:41:27.2925046Z     -         "key": "",
2019-01-06T23:41:27.2925294Z     +         "key": undefined,
2019-01-06T23:41:27.2925532Z               "nodeType": "host",
2019-01-06T23:41:27.2925778Z               "props": Object {
2019-01-06T23:41:27.2926121Z                 "children": "Unassign",
2019-01-06T23:41:27.2926369Z                 "value": "",
2019-01-06T23:41:27.2926599Z               },
2019-01-06T23:41:27.2926920Z     @@ -227,11 +227,11 @@
2019-01-06T23:41:27.2927152Z             },
2019-01-06T23:41:27.2927376Z             "ref": null,
2019-01-06T23:41:27.2927618Z             "rendered": Array [
2019-01-06T23:41:27.2927958Z               Object {
2019-01-06T23:41:27.2928224Z                 "instance": null,
2019-01-06T23:41:27.2928466Z     -           "key": "",
2019-01-06T23:41:27.2928709Z     +           "key": undefined,
2019-01-06T23:41:27.2929077Z                 "nodeType": "host",
2019-01-06T23:41:27.2929405Z                 "props": Object {
2019-01-06T23:41:27.2929685Z                   "children": "Unassign",
2019-01-06T23:41:27.2930053Z                   "value": "",
2019-01-06T23:41:27.2930303Z                 },
2019-01-06T23:41:27.2930455Z 
2019-01-06T23:41:27.2930668Z       29 | 
2019-01-06T23:41:27.2931079Z       30 |     it('should render SelectUserDropdownComponent', () => {
2019-01-06T23:41:27.2931403Z     > 31 |         expect(getWrapper()).toMatchSnapshot();
2019-01-06T23:41:27.2931693Z          |                              ^
2019-01-06T23:41:27.2931950Z       32 |     });
2019-01-06T23:41:27.2932278Z       33 | 
2019-01-06T23:41:27.2932569Z       34 |     it('should call onChange function on input value change', () => {
2019-01-06T23:41:27.2932782Z 
2019-01-06T23:41:27.2933081Z       at Object.<anonymous> (wmclient/js/Components/App/__tests__/SelectUserDropdownTests.tsx:31:30)
2019-01-06T23:41:27.2933431Z 
2019-01-06T23:41:27.2933785Z  › 1 snapshot failed.
...