valchkou wrote: 09 Sep 2017 07:08
Но нам нужна типа система, (боюсь слова платформа) на которую можно натравить ручных тестеров и они смогут чего то там начать автоматизировать. Потому что если их на травить на селениум то ничего не получится так как для начала им нужно стать жава программистами.
Нет такого. Ты же вроде умный а хочешь каких-то сказок. Что бы что-то там оттестировать нужно вначале создать кучи сложных фейковых данных, потом прокликать много экранов которые все работают на Angular. Потом всё почистить и тыды.
в теории после того как всё настроено то можно взять ручных тестеров которые нафигачат тысячу таких кейсов. Но на практике это работает плохо - мозги никто не отменял и будет много г-на а мало пользы.
В приличном обществе такой код не показывайте.
Я тоже огурцы посмотрел похохотал - даже и на джуниор не тянет
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
"A patriot must always be ready to defend his country against his government." Edward Abbey
valchkou wrote: 09 Sep 2017 07:08
Но нам нужна типа система, (боюсь слова платформа) на которую можно натравить ручных тестеров и они смогут чего то там начать автоматизировать. Потому что если их на травить на селениум то ничего не получится так как для начала им нужно стать жава программистами.
Нет такого. Ты же вроде умный а хочешь каких-то сказок. Что бы что-то там оттестировать нужно вначале создать кучи сложных фейковых данных, потом прокликать много экранов которые все работают на Angular. Потом всё почистить и тыды.
в теории после того как всё настроено то можно взять ручных тестеров которые нафигачат тысячу таких кейсов. Но на практике это работает плохо - мозги никто не отменял и будет много г-на а мало пользы.
В приличном обществе такой код не показывайте.
Я тоже огурцы посмотрел похохотал - даже и на джуниор не тянет
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
довольно тупо. ))) огурцы у нас хранят expected result в json файлах. тогда сравнивать в ассертах проще.
если у тебя в бизнес обьекте 1000 атрибутов, то в твоей таблице будет 1000 колонок.
мда это будет довольно тупо выглядеть. Представляю удивлённые глаза бизнисьменов.
valchkou wrote: 09 Sep 2017 07:08
Но нам нужна типа система, (боюсь слова платформа) на которую можно натравить ручных тестеров и они смогут чего то там начать автоматизировать. Потому что если их на травить на селениум то ничего не получится так как для начала им нужно стать жава программистами.
Нет такого. Ты же вроде умный а хочешь каких-то сказок. Что бы что-то там оттестировать нужно вначале создать кучи сложных фейковых данных, потом прокликать много экранов которые все работают на Angular. Потом всё почистить и тыды.
в теории после того как всё настроено то можно взять ручных тестеров которые нафигачат тысячу таких кейсов. Но на практике это работает плохо - мозги никто не отменял и будет много г-на а мало пользы.
В приличном обществе такой код не показывайте.
Я тоже огурцы посмотрел похохотал - даже и на джуниор не тянет
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
довольно тупо. ))) огурцы у нас хранят expected result в json файлах. тогда сравнивать в ассертах проще.
если у тебя в бизнес обьекте 1000 атрибутов, то в твоей таблице будет 1000 колонок.
мда это будет довольно тупо выглядеть. Представляю удивлённые глаза бизнисьменов.
Да ладно покажите свой огурец - впечатлите так сказать публику
Что-то должно быть интеллектуальное навроде Then "json1" equals "json2"
"A patriot must always be ready to defend his country against his government." Edward Abbey
Нет такого. Ты же вроде умный а хочешь каких-то сказок. Что бы что-то там оттестировать нужно вначале создать кучи сложных фейковых данных, потом прокликать много экранов которые все работают на Angular. Потом всё почистить и тыды.
в теории после того как всё настроено то можно взять ручных тестеров которые нафигачат тысячу таких кейсов. Но на практике это работает плохо - мозги никто не отменял и будет много г-на а мало пользы.
В приличном обществе такой код не показывайте.
Я тоже огурцы посмотрел похохотал - даже и на джуниор не тянет
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
довольно тупо. ))) огурцы у нас хранят expected result в json файлах. тогда сравнивать в ассертах проще.
если у тебя в бизнес обьекте 1000 атрибутов, то в твоей таблице будет 1000 колонок.
мда это будет довольно тупо выглядеть. Представляю удивлённые глаза бизнисьменов.
Да ладно покажите свой огурец - впечатлите так сказать публику
Что-то должно быть интеллектуальное навроде Then "json1" equals "json2"
ну типа того. только не json сравнивают, а обьекты через рефлект.
Я не с ветрянными мельницами работаю, поэтому показать не могу. посодют.
но ты и так всё понял.
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
довольно тупо. ))) огурцы у нас хранят expected result в json файлах. тогда сравнивать в ассертах проще.
если у тебя в бизнес обьекте 1000 атрибутов, то в твоей таблице будет 1000 колонок.
мда это будет довольно тупо выглядеть. Представляю удивлённые глаза бизнисьменов.
Да ладно покажите свой огурец - впечатлите так сказать публику
Что-то должно быть интеллектуальное навроде Then "json1" equals "json2"
ну типа того. только не json сравнивают, а обьекты через рефлект.
Я не с ветрянными мельницами работаю, поэтому показать не могу. посодют.
но ты и так всё понял.
Я прерасно понял, что Вы даже не удосужились ни разу поговорить с легал департаментом и прояснить вопрос за что Вас компания может уволить. Но тем не менее приятно поговорить с очередным джуниором о проблемах огурцов и как огурцы в таблице могут содержать миллионы параметров просто указывая не сами значения, а ссылки на хранилища этих параметров к примеру на тот же S3 bucket на Амазоне.
P.S. Вам напомнить про вашу маму или сами догадаетесь и перестанете обращаться на ты к собеседнику Кнопка "!" работает лучше упоминания чьей-то мамы.
"A patriot must always be ready to defend his country against his government." Edward Abbey
Sergunka wrote: 10 Sep 2017 21:06Вам напомнить про вашу маму или сами догадаетесь и перестанете обращаться на ты к собеседнику
Напомните
ну я сам напомню.
мерзавец писал 20 Nov 2016 03:21:
"И насколько я припоминаю ни Вас, ни Вашу маму я не трахал так, что давайте без фамильярностей."
сегодня мерзавец пишет:
"Вам напомнить про вашу маму или сами догадаетесь и перестанете обращаться на ты к собеседнику "
Моя мама умерла много лет назад. Странно, что такие мерзавцы остаются абсолютно безнаказанными.
У этого мерзавца есть семья, дети, друзья, знакомые, коллеги и неужели они не видят насколько этот человек - мерзавец? Ваш оппонент уже понёс наказание год назад за процитированный пост, неделю бана. А вот вы продолжаете ему тыкать и выносить обсуждение его личностных характеристик на публику, что является грубым нарушением правил. Пока предупреждение.
ystar wrote: 10 Sep 2017 03:21
Существуют и найти можно. Стоимость на уровень Senior девелопера. Но знания должны быть как и со стороны программирования, так и со стороны QA, по сути такой человек должен знать побольше senior девелопера.
КМК такие перцы не только очень редки, но и не задерживаются надолго в этом состоянии - уходят или в начальники, или в чистые программисты. Нестабильный изотоп, короче. Труд слишком тяжелый, нервный и неблагодарный в контексте работы в организации, куда проще или руками водить, или по клаве стучать без затей.
ystar wrote: 10 Sep 2017 03:21
Существуют и найти можно. Стоимость на уровень Senior девелопера. Но знания должны быть как и со стороны программирования, так и со стороны QA, по сути такой человек должен знать побольше senior девелопера.
КМК такие перцы не только очень редки, но и не задерживаются надолго в этом состоянии - уходят или в начальники, или в чистые программисты. Нестабильный изотоп, короче. Труд слишком тяжелый, нервный и неблагодарный в контексте работы в организации, куда проще или руками водить, или по клаве стучать без затей.
На самом деле ставить процесс и имплементировать фреймворк это задача тех лида при полной поддержке продакт оунера. В большинстве случаев процесс настолько нестабильный, что даже потеря одного серьезного девелопера может стопорнуть процесс или вообще его разрушить. Более того не всякий продакт оунер грамотно понимает концепцию сценариев и тем более вряд ли начнет писать огурцы для definition of done обычно это еще один чел в команде кто это делает Technical Product Manager (TPM) В реале получается команда должна быть больше десяти человек чтоб процесс пошел.
"A patriot must always be ready to defend his country against his government." Edward Abbey
valchkou wrote: 09 Sep 2017 07:08
Но нам нужна типа система, (боюсь слова платформа) на которую можно натравить ручных тестеров и они смогут чего то там начать автоматизировать. Потому что если их на травить на селениум то ничего не получится так как для начала им нужно стать жава программистами.
Нет такого. Ты же вроде умный а хочешь каких-то сказок. Что бы что-то там оттестировать нужно вначале создать кучи сложных фейковых данных, потом прокликать много экранов которые все работают на Angular. Потом всё почистить и тыды.
в теории после того как всё настроено то можно взять ручных тестеров которые нафигачат тысячу таких кейсов. Но на практике это работает плохо - мозги никто не отменял и будет много г-на а мало пользы.
В приличном обществе такой код не показывайте.
Я тоже огурцы посмотрел похохотал - даже и на джуниор не тянет
Feature: Support to create/update/delete Open Model Asset Data Service (ADS) based on Wind Farm and Turbines
As an ADS Modeler,
I am able to create/update/delete model elements and query using Graph Expression Language
# @RunJustThisTest
Scenario: Create and query Wind Turbine
Given the wind farms table _WT_
| uri | name | owner | lat | lng |
| /windfarm/100 | San Ramon | GE | 37.767 |-121.9606 |
| /windfarm/101 | Lake Berryessa | GE | 38.586 |-122.275 |
And the manufacture table _WT_
| uri | name | address |
| /manufacture/100 | GE Energy | 4200 Wildwood Parkway, Atlanta, GA 30339 USA |
| /manufacture/101 | Alstom Power | 3, Avenue André Malraux , 92309 Levallois-Perret Cedex, France |
And the wind turbines table _WT_
| uri |name | parent |manufacture |model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/100 | 100 | /windfarm/100 | /manufacture/100 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
| /windturbine/101 | 101 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.5 | MTS | 80 | 82.5 | GE40 | 11.5 | | 37.768 |-121.9605667 |
| /windturbine/102 | 102 | /windfarm/100 | /manufacture/100 | XLE | 50/60 | 1.6 | MTS | 100 | 82.5 | GE403 | 14 | IEC 61400-1 | 37.7670002 |-121.9606 |
When a user queries a list of wind farms _WT_
Then a list of wind farms should be returned _WT_
| /windfarm/100 |
| /windfarm/101 |
When a user queries a list of wind turbine manufatures _WT_
Then a list of wind turbine manufatures should be returned _WT_
| /manufacture/100 |
| /manufacture/101 |
When a user queries a list of wind turbines _WT_
Then a list of wind turbines should be returned _WT_
| /windturbine/100 |
| /windturbine/101 |
| /windturbine/102 |
Scenario: Create/Validate Digital Signature for Wind Turbine
Given the wind turbine "WT01" with digital signature _WT_
| uri | model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| /windturbine/1001 | SLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
Given the wind turbine "WT01" updated _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "false" _WT_
Given the wind turbine "WT01" updated with new signature _WT_
| model | frequency | power |towerType | hubHeight | rotorDiameter | bladeType | ratedWindSpeed | certification | lat | lng |
| XLE | 50/60 | 1.5 | MTS | 65 | 77 | GE40 | 14 | | 37.7670002 |-121.96057 |
When a user queries "WT01" wind turbine _WT_
Then wind turbine "WT01" signature is "true" _WT_
и это тоже лучше не показывать.
property files c линками на json - самое то было бы, не учитывая остального.
ystar wrote: 10 Sep 2017 18:06
немного не правильно выразился.
весь код должен быть покрыт unit тестами, вне зависимости, как часто он изменяется.
вот api и ui, как показывает мой опыт и опыт коллег, не имеет смысле покрывать автотестами, если код меняется очень часто, то автотестеры не будут успевать все поддерживать. Теоретически можно иметь достаточное количество автотестеров, чтобы все успевать параллельно менять, либо заставлять девелоперов все автотесты менять. Но теория это теория, на практике - ресурсы сильно ограничены.
И да, у нас с вами, возможно разное представление, о том, что подразумевается в частом меняющемся коде.
И как показывает практика, девелоперы далеки достаточно от тестирования в большинстве своем.
Хороший инструмент для определения чего автоматить, чего можно на потом оставить - с ошибкой в 20-30%.
Неправильно в вашем представлении чуть более, чем все.
Нет никаких повсеместно применимых правил типа "юнит тестами должно быть покрыто все". Нет четко определенного правила покрывать ли часто меняющийся код автотестами или нет. В каждом случае прикладывается умственное усилие и принимаются решения, что имеет смысл, что — нет. И что можно сейчас себе позволить. Это если есть кому это умственное усилие прикладывать. А если нет — то одни гребцы поднимают покрытие юнит тестами с 80% до 90 чтобы график показать, а другие пишут юай автотесты на код, который не изменится никогда. Смысла ноль, но все заняты.
Sergunka wrote: 11 Sep 2017 01:33Более того не всякий продакт оунер грамотно понимает концепцию сценариев и тем более вряд ли начнет писать огурцы для definition of done обычно это еще один чел в команде кто это делает Technical Product Manager (TPM) В реале получается команда должна быть больше десяти человек чтоб процесс пошел.
А какое отношение могут иметь огурцы к definition of done? Dod это же примерно "коцаный тикет канает за отмазку, некоцаный тикет — гнилой базар". Ну или что то типа "фича считается готовой, если проходит х % юнит тестов, у процентов автотестов, нет критических багов и докУмент жжж подписан начальником транспортного цеха". А то, что можно описать огурцами — acceptance criteria. У вас не так?
Sergunka wrote: 11 Sep 2017 01:33Более того не всякий продакт оунер грамотно понимает концепцию сценариев и тем более вряд ли начнет писать огурцы для definition of done обычно это еще один чел в команде кто это делает Technical Product Manager (TPM) В реале получается команда должна быть больше десяти человек чтоб процесс пошел.
А какое отношение могут иметь огурцы к definition of done? Dod это же примерно "коцаный тикет канает за отмазку, некоцаный тикет — гнилой базар". Ну или что то типа "фича считается готовой, если проходит х % юнит тестов, у процентов автотестов, нет критических багов и докУмент жжж подписан начальником транспортного цеха". А то, что можно описать огурцами — acceptance criteria. У вас не так?
Ну, дык на огурцах описывается acceptance criteria, что фактически является ДоД. На самом деле с ДоД можно разобраться и без огурцов, но если нет покрытия по сценариям более 80% то рефакторинг проекта хрен сделаешь.
"A patriot must always be ready to defend his country against his government." Edward Abbey
ystar wrote: 10 Sep 2017 18:06
немного не правильно выразился.
весь код должен быть покрыт unit тестами, вне зависимости, как часто он изменяется.
вот api и ui, как показывает мой опыт и опыт коллег, не имеет смысле покрывать автотестами, если код меняется очень часто, то автотестеры не будут успевать все поддерживать. Теоретически можно иметь достаточное количество автотестеров, чтобы все успевать параллельно менять, либо заставлять девелоперов все автотесты менять. Но теория это теория, на практике - ресурсы сильно ограничены.
И да, у нас с вами, возможно разное представление, о том, что подразумевается в частом меняющемся коде.
И как показывает практика, девелоперы далеки достаточно от тестирования в большинстве своем.
Хороший инструмент для определения чего автоматить, чего можно на потом оставить - с ошибкой в 20-30%.
Неправильно в вашем представлении чуть более, чем все.
Нет никаких повсеместно применимых правил типа "юнит тестами должно быть покрыто все". Нет четко определенного правила покрывать ли часто меняющийся код автотестами или нет. В каждом случае прикладывается умственное усилие и принимаются решения, что имеет смысл, что — нет. И что можно сейчас себе позволить. Это если есть кому это умственное усилие прикладывать. А если нет — то одни гребцы поднимают покрытие юнит тестами с 80% до 90 чтобы график показать, а другие пишут юай автотесты на код, который не изменится никогда. Смысла ноль, но все заняты.
Если бы вы умели писать хороший код, то никаких умственных усилий прикладывать не приходилось бы.