ParserError: Failed to parser , alguem sabe como resolver?

Topic created · 3 Posts · 101 Visualizações
  • Estou com problema ao executar o arquivo .feature exibe o seguinte erro:

    ParserError: Failed to parser
    REASON: No feature found.
    

    Arquivo Feature:

     
    Funcionalidade: Login
        Para que eu possa acessar as funcionalidades da plataforma de inovação
        Sendo um usuário previamente cadastrado
        Posso acessar o sistema utilizando meu usuário e senha AD
    
        Contexto: Formulário
            Dado que acessei o formulário de Login
    
        @full @smoke @logout  @maicon
        Cenário: Login do usuário
        
            Quando eu preencho o campo usuário com "saoskillma" e senha com "[email protected]"
            E clico no botão Entrar
            Então eu sou logado com sucesso
    
        @full @smoke @critical
        Cenário: Logout do usuário
        
            Quando eu preencho o campo usuário com "saoskillma" e senha com "[email protected]"
            E clico no botão Entrar
            Então eu sou logado com sucesso
            Quando eu clico no ícone de usuário e seleciono a opção Sair
            Então devo ser redirecionado para a tela de Login
    
        @full @critical 
        Cenário: Tentativa de Logar com campos em branco
    
            Quando eu preencho o campo usuário com " " e senha com " "
            E clico no botão Entrar
            Então devo ver a mensagem "Nome de usuário e/ou senha incorretos"
            E devo permanecer na tela de Login
    
        @full @critical @wip
        Cenário: Tentativa de Logar com usuário em branco
    
            Quando eu preencho o campo usuário com " " e senha com "123456 "
            E clico no botão Entrar
            Então devo ver a mensagem "Nome de usuário e/ou senha incorretos"
            E devo permanecer na tela de Login
    
        @full @critical 
        Cenário: Tentativa de Logar com senha em branco
    
            Quando eu preencho o campo usuário com "saoskillma" e senha com " "
            E clico no botão Entrar
            Então devo ver a mensagem "Nome de usuário e/ou senha incorretos"
            E devo permanecer na tela de Login
    
        @full @critical
        Esquema do Cenário: Tentativa de Logar com usuário e senha inválidos
    
            Quando eu preencho o campo usuário com "<usuário>" e senha com "<senha>"
            E clico no botão Entrar
            Então devo ver a mensagem "<mensagem>"
            E devo permanecer na tela de Login
            
            Exemplos: Usuário inválido
                | usuário   |   senha  | mensagem                              |
                | saoteste  | xxxxxx | Nome de usuário e/ou senha incorretos |
                | sao       | xxxxxx | Nome de usuário e/ou senha incorretos |
                | teste.com | xxxxxx | Nome de usuário e/ou senha incorretos |
    
            Exemplos: Senha inválida
                | usuário    | senha    | mensagem                              |
                | saoskillma | xxxxxx   | Nome de usuário e/ou senha incorretos |
                | saoskillma | xxxxxx   | Nome de usuário e/ou senha incorretos |
                | saoskillma | xxxxxx   | Nome de usuário e/ou senha incorretos |
    
    

    Classes com os steps:

    from behave import step, given, then
    from plataforma_inovacao_api.bdd.utils.assertutils import Assert
    
    @given(u'que acessei o formulário de Login')
    def step_impl(context):
        context.scenario.login_page.navigate(context.scenario.login_page.login_url)
        Assert.assert_equals(
            context.scenario.login_page.login_url, context.driver.current_url,
        message = "Página de login não acessada")
    
    
    @when(u'eu preencho o campo usuário com "{user}" e senha com "{password}"')
    def step_impl(context, user, password):
        context.scenario.login_page.fill_txt_username(user)
        context.scenario.login_page.fill_txt_password(password)
    
    
    @when(u'clico no botão Entrar')
    def step_impl(context):
        context.scenario.login_page.click_btn_login()
    
    @then(u'eu sou logado com sucesso')
    def step_impl(context):
        Assert.assert_true(context.scenario.home_page.go_to_page_home(
        ), message="Login não realizado")
    
    
    
    @when(u'eu clico no ícone de usuário e seleciono a opção Sair')
    def step_impl(context):
        context.scenario.navbar_page.logoff_user()
    
    
    @then(u'devo ser redirecionado para a tela de Login')
    def step_impl(context):
        context.scenario.login_page.go_to_page_login_failed()
        Assert.assert_equals(context.scenario.login_page.login_url, context.driver.current_url,
                             message="Aplicação não redirecionou para a tela de Login")
    
    
    @then(u'devo permanecer na tela de Login')
    def step_impl(context):
        context.execute_steps(u'''
            Então devo ser redirecionado para a tela de Login
        ''')
    
  • Rapaiz, veio até senha no código! Faz isso não!! 😞

    Parece não encontrar seus arquivos de “feature” possivelmente pela forma que está estruturado o projeto.
    Procure deixar os arquivos de feature e steps em pastas distintas.

  • sem stack completo não da pra saber o que ta acontecendo.
    se ele nao especifica qual regex que ele nao consegue fazer o parse… vai adicionando um de cada vez

    essa identação do Contexto com as outras coisas está certo?