Для SelectNodes на XmlDocument действительно ли возможно возвратить пустой указатель?

Чтобы уточнить, в любое время кто-то npm install your-library, npm загрузит все исходные файлы, которые включает репо, кроме файлов, которые вы добавляете в свой .npmignore.

Знайте, что люди, устанавливающие вашу библиотеку, будут нужно просто запустить вашу библиотеку, ничего другого не потребуется.

Например, когда кто-то устанавливает библиотеку, возможно, что он / она не заботится о ваших .travis.yml или ваших файлах .jshintrc , или даже некоторые изображения, файлы Grunt, документацию и т. д.

.npmignore может позволить вашему пакету npm иметь меньше файлов и быстрее загружаться

8
задан ColdFire 18 May 2018 в 09:15
поделиться

3 ответа

Действительно ли необходимо достигнуть 100%-го покрытия кода? Действительно, это даже возможно под нормальным (т.е. управляемый, тестируемый) обстоятельства?

Мы часто находим что с помощью "синтаксические сахарные" конструкции как using {} блок, существуют "скрытые" созданные пути выполнения кода (скорее всего, finally {} или catch {} блоки), который не может быть осуществлен, если некоторое состояние окружающей среды (как поврежденный сокет или поврежденный диск) не мешает.

2
ответ дан 5 December 2019 в 10:45
поделиться

Смотря на Отражатель, SelectNodes () метод на базовом классе XmlDocument, XmlNode, может возвратить пустой указатель, если его попытка создать навигатора возвращает пустой указатель. CreateNavigator () довольно сложен и действительно возвратит пустой указатель при нескольких обстоятельствах. Те обстоятельства, кажется, вокруг уродливого XML-документа - таким образом, существует Ваш тестовый сценарий для отказа SelectNodes ().

10
ответ дан 5 December 2019 в 10:45
поделиться

Если Вы называете SelectNodes на самом XmlDocument, и это действительно - XmlDocument и не производный класс, чем SelectNodes не возвратит пустой указатель.

Если Вы создаете класс-потомок и переопределяете CreateNavigator (XmlNode) метод затем, SelectNodes мог бы возвратить пустой указатель.

Точно так же при вызове SelectNodes на EntityReference, DocumentType или узле XmlDeclaration, Вы станете пустыми также

Короче говоря, для 100%-го покрытия на XmlDocument или XmlNode Вы только создали, необходимо протестировать на пустой указатель.

4
ответ дан 5 December 2019 в 10:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: