Testing
- Test files use
*_test.cppsuffix, named after the class under test.
Test structure pattern
using namespace testing;
using namespace testing::ext;
namespace OHOS {
namespace Rosen {
class MyFeatureTest : public testing::Test {
public:
static void SetUpTestCase();
static void TearDownTestCase();
void SetUp() override;
void TearDown() override;
};
void MyFeatureTest::SetUpTestCase() {}
void MyFeatureTest::TearDownTestCase() {}
void MyFeatureTest::SetUp() {}
void MyFeatureTest::TearDown() {}
HWTEST_F(MyFeatureTest, TestSomething, TestSize.Level1)
{
EXPECT_EQ(result, expected);
ASSERT_NE(ptr, nullptr);
}
Running a single test binary
Each ohos_unittest target in test/unittest/BUILD.gn produces its own binary.
Target names follow the pattern <module>_<test_name>:
| Module | Build target |
|---|---|
| wm | wm:test |
| wmserver | wmserver:test |
| dm | dm:test |
| dmserver | dmserver:test |
| dm_lite | dm_lite:test |
| window_scene | window_scene:test |
| snapshot | snapshot:test |
| extension/window_extension | extension/window_extension:test |