Compartilhar via


Visão geral das seqüências de conexão e permissões

Para executar o testes de unidade de banco de dados, você deve se conectar a um servidor de banco de dados usando uma ou duas seqüências de caracteres de conexão específicas.Cada cadeia de conexão representa uma conta que tenha sistema autônomo permissões específicas que você deve ter para executar a tarefa ou conjunto de tarefas em um determinado script sistema autônomo parte do teste.Você pode especificar essas cadeias de caracteres no Configuração de projetocaixa de diálogo ou editando manualmente o App. arquivo de configuração para seu projeto de teste.

Sequências de conexão

No Configuração de projeto caixa de diálogo, você pode especificar as seqüências de caracteres de conexão para cada uma das seguintes contas.

Observação:

O contexto de execução e contexto privilegiado diferem apenas se você usar a autenticação do SQL servidor.Se você usar a autenticação do Windows, as mesmas credenciais serão usadas para as duas seqüências de conexão.

  • Contexto de execução (obrigatório) - uma conta de usuário para executar o script de teste.Essa seqüência de caracteres de conexão deve ter as mesmas credenciais que você espera que os usuários têm.Isso é importante porque garante que as permissões apropriadas foram aplicadas ao seu banco de dados.Para obter mais informações, consulte Como: Configurar execução teste de unidade de banco de dados.

    No arquivo app.config para seu projeto de teste, esse é o ExecutionContext elemento.

  • O privilégio de contexto (opcional) - uma conta que tenha mais permissões para executar a ação pre-teste, ação post-teste, TestInitialize, e TestCleanup scripts.Esses scripts conjunto o estado do banco de dados e para a ação post-teste, podem ser usados para validar os objetos no banco de dados.Isso cadeia de conexão também é usado para implantar as alterações no banco de dados e gerar dados.

    No arquivo app.config para seu projeto de teste, esse é o PrivilegedContext elemento. Se os testes de unidade de banco de dados executar o script de teste somente, não é necessário especificar um contexto privilegiado.

As seqüências de caracteres que você especificar na Configuração de projetocaixa de diálogo são armazenados em aplicativo do seu projeto de teste. arquivo de configuração.Também pode edição diretamente o arquivo e recompilar o projeto após o qual os novos valores aparecem na caixa de diálogo.

Autenticação do Windows em vez de autenticação SQL

Quando você especifica as seqüências de caracteres de conexão, você deve escolher entre o uso da autenticação do Windows e autenticação do SQL.Um motivo para escolher a autenticação do Windows é que ele oferece suporte ao uso de testes por uma equipe melhor do que faz a autenticação do SQL.Se você escolher a autenticação do SQL, as seqüências de caracteres de conexão são criptografadas, usando o dados proteção DPAPI (API), com base em suas credenciais de usuário.Isso significa que os testes neste projeto de teste serão executado apenas para você, não para os membros da equipe que obtêm os testes por meio do sistema de controle de fonte depois que você as verifique no.Para executar testes neste projeto de teste, outras pessoas da sua equipe teria que reconfigurar o projeto de teste usando suas próprias credenciais.Para fazer isso, eles seriam edição sua cópia do arquivo app.config ou usar o Configuração de projeto caixa de diálogo.

Permissões

O script de teste é executado no nível de permissão de contexto de execução, que é o mesmo nível de permissão que seria em vigor para os comandos do usuário que são executados no banco de dados quando ele estiver em uso normal.A ação pre-teste, post-teste, TestInitialize e TestCleanup scripts são executados no nível de permissão do contexto privilegiado.

Por causa da conexão permissão mais alto usada para o script de ação post-teste, você pode executar validação nele.Nesse script, você também pode executar comandos de script que teste permissões.Para obter mais informações sobre permissões, consulte a seção de de teste da unidade de banco de dadosPermissões necessárias no banco de dados edição.

Consulte também

Conceitos

Scripts em testes de unidade de banco de dados

Arquivos de teste de unidade de banco de dados

Visão geral da terminologia do banco de dados edição