Regression Testing and Deployment Strategy

I would like advice on deployment strategies. If the development team creates an extensive structure, and many (20-30) applications consume it, and the business wants to update applications at least once every 30 days, what is the best deployment strategy?

The reason I ask is because there seems to be a lot of waste (and risk) when using a flexible approach to deploying changes monthly if 90% of the applications are not changed. I mean that the structure can change over the course of a month, and therefore there may be several applications. As the structure has changed, all applications must be regression. If, say, 10 applications do not change at all during the year, then these 10 applications are checked with regression EVERY MONTH when they did not have any changes in functions or hot fixes. They needed to be tested simply because the business is updated monthly.

And the risk that is involved ... if you deploy a mission-critical application that takes several weeks and several departments to check whether it is realistic to expect that you will have to constantly test this application regressively?

One option is for any frame updates to be backward compatible. Although this will mean that applications do not need to change their code, they will still need to be tested because the underlying infrastructure has changed. And the risk involved is great; the ever-changing structure (and the deployment of this structure) means that a mission-critical application can never just enjoy the same code base for a long time.

These applications use the same database, so ongoing testing is required. I know TDD and automatic tests, but at the moment this does not exist.

Any tips?

+3
source share
4 answers

The idea of โ€‹โ€‹a structure is that it should be a "slow moving code." You should not change the structure as often as the applications that it supports. Try to get structure in a slower development cycle: perhaps release no more than every three or six months.

, . , , , , , .

Agile . , , , , . , .

+3

Agile, () . Agile , , . . , 1) - ; 2) , . Agile. , .

- , . , .NET . , , . , , , , . .

, . - . . , , , , .

+2

, : 1. , . 2. . , - . , . . 3. . , , . , . , , 3 .

+1

- . . , , . - , ; , "" " ". , , , " ".

, . , " ", . .

, , , , . - DAL, - . , , . " " , .

3 ; , . , QA , Production - (, , ). , , , QA 1 . , , . , , , . , , Production. QA .

Automation of regression tests would be a truly wonderful thing; in theory. In practice, you end up spending more time updating the testing code, then you will manually run the test scripts. In addition, you can hire two or three testing monkeys for the price of one really good script developer. Sad, but true.

+1
source

Source: https://habr.com/ru/post/1748698/


All Articles