Recover RemoteExecutor integration tests for linaro-ami

Bug #1022531 reported by Paul Sokolovsky
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro AWS Tools
Fix Released
Critical
Paul Sokolovsky

Bug Description

During initial implementation, there were integration tests for RemoteExecutor class. Unfortunately, they were removed later. They should be recovered to make possible adding regression tests for things like lp:1022529.

Related branches

Changed in linaro-aws-tools:
milestone: none → 2012.07
assignee: nobody → Paul Sokolovsky (pfalcon)
importance: Undecided → Critical
status: New → Triaged
summary: - Recover RemoteExecutor integration tests for lianro-ami
+ Recover RemoteExecutor integration tests for linaro-ami
Changed in linaro-aws-tools:
status: Triaged → In Progress
Revision history for this message
Данило Шеган (danilo) wrote :

Do note that running local development tests should not involve talking to remote machines: it should be possible to do development and run all the tests without a network connection.

There is no reason we couldn't set up a small SSH slave for testing (eg. in a test setUp method or similar).

Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

> Do note that running local development tests should not involve talking to remote machines: it should be possible to do development and run all the tests without a network connection.

Yes, sure that's why there're unit vs integration tests, and they should be clearly separated. The story here is, when starting on linaro-ami in the given timeframe, we understood that we won't have enough time to write complete full-fledged testsuite, and given the choice (well, dilemma), we decided to concentrate on integration tests - we really needed them, because even I didn't know all EC2 API we needed, and only integration tests can prove that the tool really works (because most of problems are in integration domain, not in our code). The plan was to elaborate testsuite later, when time permits. Unfortunately, part of integration tests were replaced with unit tests, instead of being added to.

So, what I'm doing now is recovering most useful old integration tests for RemoteExecutore, and restructure testsuite so unit and integration tests were clearly separated, and it was possible to run each subsuite separately. I also want to make only unittests to run by default, with running full testsuite (incl. integration) requiring explicit user intention.

Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

> There is no reason we couldn't set up a small SSH slave for testing (eg. in a test setUp method or similar).

Well, regarding specific means of integration testing, we're doing integration testing against EC2 anyway, so can and do start instances. We use micro instances for tests which are free/cheap. So, makes sense to use them for SSH testing too instead of introducing separate support layer for it (again, here test complexity >> our code complexity). Also, this way we test against exact SSH, etc. versions we use on production.

Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

Fix available in associated branch.

Changed in linaro-aws-tools:
status: In Progress → Fix Committed
Changed in linaro-aws-tools:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.