Прикрепил текст с условиями.
Если кто-то сталкивался с такой проблемой и есть возможные способы решения, я бы был очень благодарен.
Отправлено 07 июня 2019 - 11:21
Прикрепил текст с условиями.
Если кто-то сталкивался с такой проблемой и есть возможные способы решения, я бы был очень благодарен.
Отправлено 07 июня 2019 - 11:22
Таблица делается для тестирования ролевой модели.
Отправлено 07 июня 2019 - 11:25
что-то много букв
попробуйте сначала максимально упростить всё и сгенерировать небольшую модель, потом понемногу усложняйте и каждый раз генерируйте
пока модель большая - непонятно где заламывается
Отправлено 07 июня 2019 - 11:46
Она и заламывается от того, что данных очень много и модель получается огромная
Отправлено 07 июня 2019 - 12:15
что-то много букв
попробуйте сначала максимально упростить всё и сгенерировать небольшую модель, потом понемногу усложняйте и каждый раз генерируйте
пока модель большая - непонятно где заламывается
буду пробовать, спасибо
Отправлено 07 июня 2019 - 12:56
Проверьте, если я ошибаюсь.
IF [Container] = "RTPT" THEN [TypeRT] = "listRT" OR [TypeRT] = "formRT" OR [TypeRT] = "operationRT"; IF [Container] = "RTPT" THEN [TypePT] = "listPT" OR [TypePT] = "operationPT";
Это означает, что валидно [Container] = "RTPT", [TypeRT] = "listRT", [TypePT] = "listPT".
Далее по модели:
IF [TypeRT] = "listRT" THEN [AccessTypeRT] = "RUD" OR [AccessTypeRT] = "RU" OR [AccessTypeRT] = "UD" OR [AccessTypeRT] = "R"; IF [TypeRT] = "listRT" THEN [AccessTypePT] = "0";
и:
IF [TypePT] = "listPT" THEN [AccessTypePT] = "RUD" OR [AccessTypePT] = "RU" OR [AccessTypePT] = "UD" OR [AccessTypePT] = "R"; IF [TypePT] = "listPT" THEN [AccessTypeRT] = "0";
Похоже на противоречие.
А чтобы PICT сам остановился и сказал, что не может построить таблицу, по такой модели он должен перебрать очень много комбинаций.
Отправлено 07 июня 2019 - 13:08
Поправочка. Конечно, можно сказать, что пара [TypeRT] = "listRT" и [TypePT] = "listPT" будет невозможна по исходным данным.
Но не уверен, что PICT может выводить такое из зависимых условий. Может быть, ему надо указывать такие ограничения более явно.
Отправлено 07 июня 2019 - 14:01
Проверьте, если я ошибаюсь.
IF [Container] = "RTPT" THEN [TypeRT] = "listRT" OR [TypeRT] = "formRT" OR [TypeRT] = "operationRT"; IF [Container] = "RTPT" THEN [TypePT] = "listPT" OR [TypePT] = "operationPT";Это означает, что валидно [Container] = "RTPT", [TypeRT] = "listRT", [TypePT] = "listPT".
Далее по модели:
IF [TypeRT] = "listRT" THEN [AccessTypeRT] = "RUD" OR [AccessTypeRT] = "RU" OR [AccessTypeRT] = "UD" OR [AccessTypeRT] = "R"; IF [TypeRT] = "listRT" THEN [AccessTypePT] = "0";и:
IF [TypePT] = "listPT" THEN [AccessTypePT] = "RUD" OR [AccessTypePT] = "RU" OR [AccessTypePT] = "UD" OR [AccessTypePT] = "R"; IF [TypePT] = "listPT" THEN [AccessTypeRT] = "0";Похоже на противоречие.
А чтобы PICT сам остановился и сказал, что не может построить таблицу, по такой модели он должен перебрать очень много комбинаций.
Отправлено 07 июня 2019 - 14:10
можете скомпилировать и отдебажить где тул виснет
хотя может быть код сложный и непонятно будет
https://github.com/microsoft/pict
Отправлено 07 июня 2019 - 14:23
Я принял волевое решение и оставил один Access. Но все равно игнорируются RTPT и RTPTAT:
Отправлено 07 июня 2019 - 15:03
Я не знаю исходных требований, поэтому подсказывать сложно.
Но последний вариант уже несовместим с первым.
И в последнем вообще запутались, например, "IF [Container] = "RTPTAT" THEN [TypeRT] = ..." определено 2 раза по-разному, да и не только это.
Отправлено 07 июня 2019 - 15:05
выглядит это супер-сложно, а действительно ли оно надо?
может можно как-то по-другому кейсы покрыть? может юнит-тестами?
Отправлено 07 июня 2019 - 16:06
выглядит это супер-сложно, а действительно ли оно надо?
может можно как-то по-другому кейсы покрыть? может юнит-тестами?
нет, это ролевая модель, нужно все наглядно наблюдать
Отправлено 07 июня 2019 - 16:08
Я не знаю исходных требований, поэтому подсказывать сложно.
Но последний вариант уже несовместим с первым.
И в последнем вообще запутались, например, "IF [Container] = "RTPTAT" THEN [TypeRT] = ..." определено 2 раза по-разному, да и не только это.
не понял, в чем ошибка
Отправлено 07 июня 2019 - 16:19
нет, это ролевая модель, нужно все наглядно наблюдать
если это роли, то какой смысл вообще в пэйрвайз?
достаточно ведь просто каждую роль протестировать
Отправлено 07 июня 2019 - 16:37
нет, это ролевая модель, нужно все наглядно наблюдать
если это роли, то какой смысл вообще в пэйрвайз?
достаточно ведь просто каждую роль протестировать
Комбинации настроек ролей очень обширные. Я итак исключил редкие кейсы, типа создания объекта без чтения на него.
Отправлено 07 июня 2019 - 17:00
Комбинации настроек ролей очень обширные. Я итак исключил редкие кейсы, типа создания объекта без чтения на него.
в Джире например тоже куча настроек ролей. Но для их тестирования никакой пэйрвайз был бы не нужен
отдельно проверяется кто может создать тикет, отдельно проверяется кто может редактировать тикет
без всяких огромных монстров-таблиц
комбинации нужны когда сущности связаны, например принтер и операционная система
но когда сущности не связаны - тогда и таблицы не нужны. одна роль должна работать совершенно независимо от других ролей
Отправлено 09 июня 2019 - 20:51
Комбинации настроек ролей очень обширные. Я итак исключил редкие кейсы, типа создания объекта без чтения на него.
в Джире например тоже куча настроек ролей. Но для их тестирования никакой пэйрвайз был бы не нужен
отдельно проверяется кто может создать тикет, отдельно проверяется кто может редактировать тикет
без всяких огромных монстров-таблиц
комбинации нужны когда сущности связаны, например принтер и операционная система
но когда сущности не связаны - тогда и таблицы не нужны. одна роль должна работать совершенно независимо от других ролей
У нас много клиентов, которые придумывают очередные упоротые кейсы. У нас что-то типа джиры, только свое с BPMN
Отправлено 09 июня 2019 - 20:59
У нас много клиентов, которые придумывают очередные упоротые кейсы. У нас что-то типа джиры, только свое с BPMN
ну и пусть клиенты придумывают, Вам то что? это независимые ведь комбинации, то есть пэйрвайз неприменим
если например надо протестировать 3 разрешения, на создание тикетов, на редактирование, и на удаление. Вопрос: сколько надо кейсов, и надо ли использовать пейрвайз?
Ответ: надо 6 кейсов, по 2 на разрешение, 0 и 1 для каждого
Но можно упарываться и создавать пейрвайз кейсы, и будет там что-то типа: "пользователь имеет разрешение на редактирование + на удаление" и тому подобное
если туда добавить еще штук так 10 разрешений - это вообще трэш начнется
Отправлено 10 июня 2019 - 11:21
0 пользователей, 0 гостей, 0 анонимных