Skip to content
This repository has been archived by the owner on Nov 24, 2023. It is now read-only.

increase DM unit test/integration test code coverage #70

Open
9 of 22 tasks
amyangfei opened this issue Mar 8, 2019 · 1 comment
Open
9 of 22 tasks

increase DM unit test/integration test code coverage #70

amyangfei opened this issue Mar 8, 2019 · 1 comment
Labels
type/feature-request This issue is a feature request type/task-sharing Switching tasks between the staff, feel free to rock your mind

Comments

@amyangfei
Copy link
Contributor

amyangfei commented Mar 8, 2019

Feature Request

Describe the feature you'd like:

We want to cover most import logic path in DM and increase code coverage as high as possible

P0, P1, P2 represents the priority, P0 has the highest priority, P2 has the lowest priority. P0 > P1 > P2

Teachability Strategy:

We want to finish this task in several steps

  • add tests to cover most import logic path, tests not included in DM are listed as follows

    • P1: online DDL test dm#84
    • P1: online DDL test in non sharding mode
    • P1: relay log correctness test P0 dm#91
    • P1: master slave switch test
      • P1: master slave switch with VIP auto master-slave switch #1364
      • P1: master slave switch with different upstream IP/host
      • P1: upstream change server_uuid/server_id, which is similar to master slave switch with VIP
    • P2: dmctl API, including many APIs and also some error handling scenario, such as sql-skip/sql-replace, sharding DDL error handling etc. dm#135
    • P2: syncer heartbeat dm#86
    • P2: metric API
    • P2: periodicity status, such as syncer PrintStatus, loader PrintStatus dm#127
    • P1: test increment mode task dm#112
    • P1: test task config update
    • P0: detect casuality conflict and generate flush job test case dm#198
    • P0: remove mysql dependence from unit test dm#209, dm#215, dm#226
  • add more failpoint inject

    • P0: test drop schema, drop table, truncate table, create database, create table in sharding mode dm#123
    • P1: inject some db operation error, for example, connection timeout, table schema information has changed dm#206
    • P2: test load unit auto .name suffix compatibility
    • P1: test load/syncer unit pause and resume
    • P1: test syncer unit get Event timeout
    • P0: test unexpected exit before flush checkpoint (with and without is-sharding)
    • P0: cover more logic in sequence sharding
  • increase code coverage mainly based on coverage of each source file

@amyangfei amyangfei added the type/feature-request This issue is a feature request label Mar 8, 2019
@amyangfei amyangfei added the type/task-sharing Switching tasks between the staff, feel free to rock your mind label Jul 11, 2019
@amyangfei
Copy link
Contributor Author

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
type/feature-request This issue is a feature request type/task-sharing Switching tasks between the staff, feel free to rock your mind
Projects
None yet
Development

No branches or pull requests

1 participant