Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] proposal for side-stepping known test failures

This sounds great in theory. In practice, it's impractical. The entire collection of CDT tests is not a flat list of test methods; it's a hierarchy. Creating an alternate configuration of that hierarchy that excludes failing tests would either require a lot of refactoring (which would cause a lot of churn and significantly complicate the test codebase), or it would lead to a lot of redundancy and be difficult to maintain. Consider a test class deep in the hierarchy that has one unreliable test method.

Yes; the property approach is strange. But it's effective and it's not production code.

John   


From: cdt-dev-bounces@xxxxxxxxxxx [cdt-dev-bounces@xxxxxxxxxxx] on behalf of Schorn, Markus [Markus.Schorn@xxxxxxxxxxxxx]
Sent: Wednesday, August 22, 2012 2:28 AM
To: CDT General developers list.
Subject: Re: [cdt-dev] proposal for side-stepping known test failures

I think using the java-property it is a strange approach to get a customized test suite. It would be more natural to compose a separate TestSuite out of the existing tests.

Markus.

 

From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Cortell John-RAT042
Sent: Tuesday, August 21, 2012 9:47 PM
To: CDT General developers list.
Subject: Re: [cdt-dev] proposal for side-stepping known test failures

 

I brought this up for discussion last week, before I pushed the changes. One person had concerns; we began a debate and the thread ended without retort to my points. Thus I went ahead with my changes.

 

That said, I will respect a general consensus. I encourage a few more folks to weigh in so we can get there. Honestly, I'm quire surprised that such a small and innocuous set of changes to test code is drawing such a reaction. 

 

John

 


From: cdt-dev-bounces@xxxxxxxxxxx [cdt-dev-bounces@xxxxxxxxxxx] on behalf of Andrew Gvozdev [angvoz.dev@xxxxxxxxx]
Sent: Tuesday, August 21, 2012 2:36 PM
To: CDT General developers list.
Subject: Re: [cdt-dev] proposal for side-stepping known test failures

I agree, +1.

 

There are other ways to achieve test suite that passes 100%. You can create separate test suite that includes only tests you wish to test. You can keep your changes on local branch as Sergey suggested. You can create a special branch in CDT repository even if there is really need to share. But, please, do not keep it on master branch.

 

Andrew

On Tue, Aug 21, 2012 at 3:05 PM, Sergey Prigogin <eclipse.sprigogin@xxxxxxxxx> wrote:

I propose to revert the commit http://git.eclipse.org/c/cdt/org.eclipse.cdt.git/commit/?id=1bd247ce3d8825b76623166a89b111884ae1b195. John, you can keep the commit on a local branch if you prefer.

 

-sergey

 

On Tue, Aug 21, 2012 at 11:55 AM, Cortell John-RAT042 <RAT042@xxxxxxxxxxxxx> wrote:

Andrew,

 

If the filters I added did not cover failures seen by someone else, and that person also wants to have a reliable test suite, then he should add additional filters. If I see additional unreliable tests in future runs, I will add filters for them.

 

I wish creating a bugzilla report would result in these intermittent failures being fixed. But I'm not going to hold my breath and I'm not going to waste time creating bugzilla reports for tests that someone has written but has not ensured they run successfully and consistently on Windows. As you already know, there are intermittent failures even on Linux. I've spent a considerable amount of time debugging and fixing ones I could tackle. But I have to move on.

 

What I want is to be able to run a CDT test suite locally and have zero failures, based on what's in git. Sadly, with these filters, I've reduced the overall test suite from about 12K tests to 3K[*]. I've had to filter entire chunks because failures happen not only intermittently but in random locations within the particular chunk. Hopefully someone who has the time and motivation to run and troubleshoot these tests on Windows will try to address this situation.

 

I said it before and I'll say it again: a test suite that produces dozens of failures is all but useless for regression detection. I want a test suite that passes 100%. What I've done is rigged the tests so that I and others can get that subset with the flip of a switch.

 

John

 

[*] Again, these filters must be manually activated. By default, all tests still run.

 


From: cdt-dev-bounces@xxxxxxxxxxx [cdt-dev-bounces@xxxxxxxxxxx] on behalf of Andrew Gvozdev [angvoz.dev@xxxxxxxxx]
Sent: Tuesday, August 21, 2012 1:31 PM


To: CDT General developers list.
Subject: Re: [cdt-dev] proposal for side-stepping known test failures

 

Hi John,

This approach does not look particularly scalable. Is it intended that every commiter will add to the CDT code filters for individual tests that fail in his/her environment?

// Consistently fails, and, yes, I do have Cygwin in my PATH

if (System.getProperty("cdt.skip.known.test.failures") != null) { //$NON-NLS-1$

return;

}

 

Why don't create a bug in bugzilla instead to fix the problem for good?

 

 

Thanks,

Andrew

 

 

On Fri, Aug 17, 2012 at 12:49 PM, Cortell John-RAT042 <RAT042@xxxxxxxxxxxxx> wrote:

I was able to resolve roughly a dozen intermittent failures caused by a bug in

 

   org.eclipse.cdt.ui.tests.BaseUITestCase.checkTreeNode(IViewPart, int, String)

 

The implementation searched the entire workbench for the SWT Tree instead of just the given view.  This would intermittently (but frequently enough) return, e.g., the Outline view’s tree because it has a root element with the same label as that in the Call hierarchy view. It was just a matter of the order in which the controls in the workbench were found, which is undefined and inconsistent.

 

So, here we have an example of a test being unreliable, unrelated to OS or environment. The test had a bug and you and Hudson were simply getting lucky.

 

I’ve pushed the fix to master.

 

John

 

 

From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Andrew Overholt
Sent: Friday, August 17, 2012 7:44 AM


To: CDT General developers list.
Subject: Re: [cdt-dev] proposal for side-stepping known test failures

 

> Since we don't have Hudson on Windows

There is a Windows Hudson slave, isn't there?  A job could be set up to run either the full CDT build or just the tests on it.

Andrew


_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev

 


_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev

 


_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev

 


Back to the top