New issue
Advanced search Search tips

Issue 845879 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 3
Type: Bug



Sign in to add a comment

NavigationAndLoadCallbacksTest.FailedLoad is flaky on device

Project Member Reported by sheriff-...@appspot.gserviceaccount.com, May 23 2018

Issue description

Filed by sheriff-o-matic@appspot.gserviceaccount.com on behalf of sdefresne@google.com

Found that this test has been failing frequently since May 16th (see https://uberchromegw.corp.google.com/i/internal.bling.main/builders/iphone11-device-x64?numbuilds=200).

The failure are always in the same test, NavigationAndLoadCallbacksTest.FailedLoad:

NavigationAndLoadCallbacksTest.FailedLoad:
../../ios/web/web_state/navigation_and_load_callbacks_inttest.mm:1295: Failure
Value of: test::WaitForPageToFinishLoading(web_state())
  Actual: false
Expected: true
Stack trace:
0   ios_web_inttests                    0x0000000100545098 testing::internal::AssertHelper::operator=(testing::Message const&) const + 92
1   ios_web_inttests                    0x0000000100468468 web::NavigationAndLoadCallbacksTest_FailedLoad_Test::TestBody() + 1604
../../ios/web/web_state/navigation_and_load_callbacks_inttest.mm:1284: Failure
Actual function call count doesn't match EXPECT_CALL(observer_, PageLoaded(web_state(), PageLoadCompletionStatus::FAILURE))...
         Expected: to be called once
           Actual: never called - unsatisfied and active
Stack trace:
0   ios_web_inttests                    0x0000000100545098 testing::internal::AssertHelper::operator=(testing::Message const&) const + 92
1   ios_web_inttests                    0x000000010053f2b0 testing::internal::GoogleTestFailureReporter::ReportFailure(testing::internal::FailureReporterInterface::FailureType, char const*, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 100
2   ios_web_inttests                    0x0000000100540d48 testing::internal::UntypedFunctionMockerBase::VerifyAndClearExpectationsLocked() + 412
3   ios_web_inttests                    0x000000010046fb80 testing::internal::FunctionMockerBase<void (web::WebState*, web::PageLoadCompletionStatus)>::~FunctionMockerBase() + 48
4   ios_web_inttests                    0x000000010046c06c web::(anonymous namespace)::WebStateObserverMock::~WebStateObserverMock() + 48
5   ios_web_inttests                    0x00000001004725ec web::NavigationAndLoadCallbacksTest::~NavigationAndLoadCallbacksTest() + 72
6   ios_web_inttests                    0x000000010046bd34 web::NavigationAndLoadCallbacksTest_FailedLoad_Test::~NavigationAndLoadCallbacksTest_FailedLoad_Test() + 12
../../ios/web/web_state/navigation_and_load_callbacks_inttest.mm:1282: Failure
Actual function call count doesn't match EXPECT_CALL(observer_, DidStopLoading(web_state()))...
         Expected: to be called once
           Actual: never called - unsatisfied and active
Stack trace:
0   ios_web_inttests                    0x0000000100545098 testing::internal::AssertHelper::operator=(testing::Message const&) const + 92
1   ios_web_inttests                    0x000000010053f2b0 testing::internal::GoogleTestFailureReporter::ReportFailure(testing::internal::FailureReporterInterface::FailureType, char const*, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 100
2   ios_web_inttests                    0x0000000100540d48 testing::internal::UntypedFunctionMockerBase::VerifyAndClearExpectationsLocked() + 412
3   ios_web_inttests                    0x000000010046e6dc testing::internal::FunctionMockerBase<void (web::WebState*)>::~FunctionMockerBase() + 48
4   ios_web_inttests                    0x000000010046c074 web::(anonymous namespace)::WebStateObserverMock::~WebStateObserverMock() + 56
5   ios_web_inttests                    0x00000001004725ec web::NavigationAndLoadCallbacksTest::~NavigationAndLoadCallbacksTest() + 72
6   ios_web_inttests                    0x000000010046bd34 web::NavigationAndLoadCallbacksTest_FailedLoad_Test::~NavigationAndLoadCallbacksTest_FailedLoad_Test() + 12

This happens on iPhone and iPad simulator bots. Looking at the range of CL that landed around that time and that touched ios/web, we have the following CLs:

$ git log --oneline 4ae8cd29d704de6767b1c323095f565b97acef39...16c08245f5471ccf8384f318866c3d2331ef9d35 -- ios/web
ab40becca62c Use web::test::LoadUrl to load URL in WebUIMojoTest.
11da369f4052 Modernize NavigationAndLoadCallbacksTest integration test.
583d4851014f Change mojo manifest interface syntax from foo::mojom::Bar to foo.mojom.Bar.
453d85b08c03 Add HandleForm handler to use with EmbeddedTestServer.
ba1815a41238 Crash on unexpected URL change.

I suspect 11da369f4052.

 
Components: Tests>Flaky
Labels: OS-iOS
Owner: eugene...@chromium.org
Status: Assigned (was: Available)
eugenbut: I've marked the test as FLAKY. Can you triage?
Project Member

Comment 4 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3dede9f3320f6b6a149a2b51c76decd697818cc1

commit 3dede9f3320f6b6a149a2b51c76decd697818cc1
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Wed May 23 13:46:51 2018

Mark NavigationAndLoadCallbacksTest.FailedLoad flaky

Test NavigationAndLoadCallbacksTest.FailedLoad has been
flaky (probably since crrev.com/1065632), so mark it as
such until it is fixed.

Bug: 845879
Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ibd43be2bc3b0c02feaf7c777bef1dd261a9705cd
Reviewed-on: https://chromium-review.googlesource.com/1069094
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Reviewed-by: Gauthier Ambard <gambard@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Gauthier Ambard <gambard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561057}
[modify] https://crrev.com/3dede9f3320f6b6a149a2b51c76decd697818cc1/ios/web/web_state/navigation_and_load_callbacks_inttest.mm

Labels: Type-Bug
Summary: NavigationAndLoadCallbacksTest.FailedLoad is flaky on device (was: flaky test: ios_web_inttests)
Project Member

Comment 6 by bugdroid1@chromium.org, May 31 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3a92725be1ac33dd765b350a089549ae97a08056

commit 3a92725be1ac33dd765b350a089549ae97a08056
Author: Eugene But <eugenebut@google.com>
Date: Thu May 31 14:35:23 2018

Mark NavigationAndLoadCallbacksTest.FailedLoad flaky only on device.

This test was not flaky on the simulator.

Bug: 845879
Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: I391d4f094551a38c22baf4b88755ef840fa30fea
Reviewed-on: https://chromium-review.googlesource.com/1079319
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563223}
[modify] https://crrev.com/3a92725be1ac33dd765b350a089549ae97a08056/ios/web/web_state/navigation_and_load_callbacks_inttest.mm

Labels: -Pri-2 Pri-3
Owner: ----
Status: Available (was: Assigned)
Not ideal, but simulator coverage is sufficient for this test.

Sign in to add a comment