如何删除以下异步 Typescript 函数的重复项?

How to remove duplication of following async Typescript function?

我使用 Typescript 编写了 e2e 测试,但是 beforeEach 方法内容使用了四个地方。它给出了声纳问题作为重复内容。我需要提取该方法以分离函数并在每个 beforeEach 方法中调用(=> 放置给定的声纳重复问题)。

describe('Acomment', () => {

 let a: A;
 beforeEach(async () => {
    a= new A();   //duplicatie
    await a.navigateToPage(); //duplicatie
    await a.scanPatient('aaa'); //duplicatie
  });
});

const navigateToAAndScanPatient = async () => {
  const a = new A();   
  await a.navigateToPage(); 
  await a.scanPatient('aaa');
  return a
}

describe('Acomment', () => {
 let a: A
 beforeEach(async () => {
   a = await navigateToAAndScanPatient()
  })
})