@Override
  public void perform() throws Exception {
    HBaseTestingUtil util = context.getHBaseIntegrationTestingUtility();
    String snapshotName = tableName + "-it-" + EnvironmentEdgeManager.currentTime();
    Admin admin = util.getAdmin();

    // Don't try the snapshot if we're stopping
    if (context.isStopping()) {
      return;
    }

    getLogger().info("Performing action: Snapshot table {}", tableName);
    SnapshotType type =
      ThreadLocalRandom.current().nextBoolean() ? SnapshotType.FLUSH : SnapshotType.SKIPFLUSH;
    admin.snapshot(snapshotName, tableName, type, snapshotProps);
    if (sleepTime > 0) {
      Thread.sleep(sleepTime);
    }
  }
Action that tries to take a snapshot of a table.
hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/actions/SnapshotTableAction.java