Какова самая сформировавшаяся Платформа BDD для.NET? [закрытый]

Предупреждение: [fункция] ожидает, что параметр 1 будет ресурсом, boolean задан

(более общий вариант Предупреждение: mysql_fetch_array () ожидает, что параметр 1 будет resource, boolean given )

Ресурсы - это тип в PHP (например, строки, целые числа или объекты). Ресурс является непрозрачным блобом без собственной значимой ценности. Ресурс специфичен и определен определенным набором функций или расширений PHP. Например, расширение Mysql определяет два типа ресурсов :

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

Расширение cURL определяет другой два типа ресурсов :

... дескриптор cURL и мультирум cURL.

Когда var_dump ed значения выглядят так:

$resource = curl_init();
var_dump($resource);

resource(1) of type (curl)

Это все большинство ресурсов - это числовой идентификатор ((1)) определенного типа ((curl)).

Вы переносите эти ресурсы и передаете их различным функциям, для которых такой ресурс что-то значит. Обычно эти функции выделяют определенные данные в фоновом режиме, а ресурс - это просто ссылка, которую они используют для отслеживания этих данных внутри.


«... ожидает, что параметр 1 будет ресурсом, логическим данная "ошибка, как правило, является результатом непроверенной операции, которая должна была создать ресурс, но вместо этого вернула false. Например, функция fopen имеет это описание:

Возвращаемые значения

Возвращает ресурс указателя файла при успешном выполнении или FALSE

Таким образом, в этом коде $fp будет либо resource(x) of type (stream), либо false:

$fp = fopen(...);

Если вы не операция fopen будет успешной или неудачной и, следовательно, будет ли $fp действительным ресурсом или false и передать $fp другой функции, которая ожидает ресурс, вы можете получить вышеуказанную ошибку:

$fp   = fopen(...);
$data = fread($fp, 1024);

Warning: fread() expects parameter 1 to be resource, boolean given

Вам всегда нужно проверять возвращаемое значение функций, которые пытаются выделить ресурс , и может выйти из строя :

$fp = fopen(...);

if (!$fp) {
    trigger_error('Failed to allocate resource');
    exit;
}

$data = fread($fp, 1024);

Связанные ошибки:

215
задан Matthias 18 December 2013 в 01:02
поделиться

6 ответов

Я не думаю, что действительно существует 'победитель'. Другие платформы включают SpecUnit.NET проект и , MSpec также показывает обещание с началом Галлио адаптер. Технически, так как IronRuby находится на горизонте, , rSpec может быть опцией для готовых пойти новейший. NBehave + NSpec мог бы быть старшей платформой с лучшей автоматизацией, хотя я боролся против чрезмерно подробного синтаксиса.

я проверил бы их всех и выбрал бы платформу, которая удовлетворяет Вашему стилю проектов лучше всего. Они - все OSS, таким образом, его твердое для потери реальная выгода находится просто в перемещении в BDD.

12
ответ дан Jim Burger 23 November 2019 в 04:21
поделиться

Существует также Привидение , который определяет DSL в Шиканье для создания всего этого более естественным.

5
ответ дан Mauricio Scheffer 23 November 2019 в 04:21
поделиться

Я обычно шел бы в пользу NBehave, объединенного с MbUnit и какой бы ни платформы DI/насмешки Вам нужно. Это - справедливый комментарий Jim Burger, что NBehave является очень подробным, и я время от времени использую вырезание и вклейку. Однако, это работает отлично - я использую плагин ReSharper Галлио, таким образом, я просто получаю дополнительный показ окна. Еще не попробовали его ccnet, все же.

4
ответ дан Dmitri Nesteruk 23 November 2019 в 04:21
поделиться

Проверьте это сообщение в блоге и его комментарии для вдохновляющих идей: http://haacked.com/archive/2008/08/23/introducing-subspec.aspx/

2
ответ дан gius 23 November 2019 в 04:21
поделиться

Check out SpecFlow.

It is a tool inspired by Cucumber that aims at providing a pragmatic and frictionless approach to Acceptance Test Driven Development and Behavior Driven Development for .NET projects today.

VisualStudio integration seems especially promising.

48
ответ дан 23 November 2019 в 04:21
поделиться

StoryQ выглядит как хорошая альтернатива NBehave с его интерфейсом Fluent. Я бы определенно проверил его.

15
ответ дан 23 November 2019 в 04:21
поделиться
Другие вопросы по тегам:

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