Search Issue Tracker

By Design

Votes

0

Found in [Package]

2.0.9

Issue ID

1229917

Regression

No

[Performance Testing API] PlayMode tests fail on build and 'ArgumentException' is thrown when engine code stripping is enabled

Package: Performance Test Framework

-

Reproduction steps:
1. Open the attached project ("case_1229917-TestRunCallbackAttribute.zip")
2. Make sure that engine code stripping is enabled in the Player Settings
3. Open Test Runner window
4. Select PlayMode tab
5. Click on 'Run all in player' button

Expected result: Test succeeds
Actual result: Test fails, 'ArgumentException: Type provided to TestRunCallbackAttribute does not implement ITestRunCallback' exception is thrown

Reproducible with: 2019.3.9f1, 2020.1.0b5, 2020.2.0a5
Couldn't test with: 2017.4, 2018.4 (minimal required package version is not supported)
Reproducible with package versions: 2.0.1, 2.0.9

Notes:
1. The issue does not reproduce when engine code stripping is disabled
2. The issue can be reproduced on both Mono and IL2CPP backends (when engine code stripping is enabled)
3. On the repro project, commenting out line 9 on 'MonobehaviourTest.cs' script fixes the issue

  1. Resolution Note:

    The performance package is stripped down when building the IL2CPP player. As a workaround add link.xml to preserve Unity.PerformanceTesting assembly.

    link.xml
    <linker>
    <assembly fullname="Unity.PerformanceTesting" preserve="all"/>
    </linker>

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.