EngSwCIC / CAMAAR

Sistema para avaliação de atividades acadêmicas remotas do CIC
12 stars 52 forks source link

Sprint-3-Grupo-1 #153

Open jpantonow opened 3 months ago

jpantonow commented 3 months ago

Grupo - Camaar - G1

Participantes:

Figma

Nosso figma

Figma monitor

Organização

Issues criadas:

Divisão do desenvolvimento

Para essa sprint, foram criadas issues baseadas nas features do cucumber criadas anteriormente. A divisão de tarefas foi feita com base nos seguintes critérios:

  1. Similaridade entre as páginas
  2. Models e controllers utilizadas
  3. Complexidade e tamanho
  4. Nível técnico dos desenvolvedores e capacidade de contribuir com a refatoração

Dependências

O projeto foi desenvolvido sumariamente em ambiente linux, tendo sido testados os seguintes sistemas operacionais com êxito:

Além disso, para a execução dos testes com rspec, é necessário que o navegador Chrome esteja devidamente instalado, dado ao fato de que o webdriver utilizado - selenium - utiliza o browser chrome em nosso ambiente de testes.

Para executar os testes do rspec utilizando o firefox vá em camaar/spec/spec_helper e substitua Capybara.javascript_driver = :selenium_chrome pelo seguinte

Capybara.javascript_driver = :selenium

As versões do ruby testadas com êxito foram ruby 3.3.0 e ruby 3.3.1. Você mode alterar sua versão a partir das seguintes bibliotecas:

Setup

Abra o terminal e clone o repositório do projeto:

git clone https://github.com/marqueswill/CAMAAR/tree/sprint-2 

Navegue até o repositório do projeto, e acesse a subpasta "camaar"

cd camaar

Instale as gems e dependências necessárias com o bundler (é necessário ruby >= 3.3.0):

bundle install

Execute os seguintes comandos para fazer as migrations e setup da database:

rails db:reset

E em seguida inicie o servidor local com o rails

rails server

E acesse o site a partir do localhost:3000

Testing

Rdoc

rdoc app

Rspec

bundle exec rspec spec/ 

Cucumber

bundle exec cucumber features/ 

O ambiente de testes foi configurado utilizando a gem 'simplecov', de maneira a integrar o Rspec com o Cucumber. Você pode visualizar a cobertura dos testes abrindo o arquivo camaar/coverage/index.html no seu navegador

Rubycritic

bundle exec rubycritic 

Cycromatic

bundle exec cycromatic app/

Guia de uso

Vìdeo exemplo

Admin/Coordenador

Ao acessar o sistema como administrador, utilize os dados gerados pela seed e faça login como coordenador de algum departamento conhecido

email (mesmo padrão para todos departamentos da seed)

admin.cic@gmail.com

senha (mesma senha para todos)

admin123

Embora a seed já tenha registrado algumas turmas, alunos e professores, para que o email de cadastro seja enviado você precisará importar os dados do json novamente. Se for necessário, podem ser adicionados departamentos e turmas por departamento, bastando importar o respectivo aquivo json, e respeitando as regras de integridade pré-existentes no arquivo /camaar/db/departments.json.

O repositório possui alguns arquivos utilizados na seed e nos testes presentes na pasta /camaar/db/. Importar o arquivo class_members.json irá enviar um email solicitando que os usuários se registrem.

Sendo um coodenador/administrador, você pode criar templates com questões textuais e de múltipla escolha.

Para o envio de um formulário, acesse a página de envio selecione a opção de formulário para aluno e/ou professor e selecione as turmas desejadas.

Formulários enviados podem ser visualizados na página "Resultados". Quando algum aluno/professor submeter uma resposta, o coordenador será capaz de exportar as respostas em csv e o número de respostas em um gráfico (somente número de respostas). Para visualizar todas respostas do form, você pode navegar para a página de "resumo" clickando no nome presente no card.

Aluno/Professor

Se você for simular um usuário registrado no json, acesse o servidor de emails localhost:3000/mails (fictício) e procure seu endereço de do usuário. Nele, ao clickar no link de "Registrar", você será submetido a uma página de cadastro onde você pode informar uma senha para sua conta. Após a submissão do registro, você precisará confirmar o cadastro a partir de outro email enviado.

Você pode responder formulários enviados acessando a página "Pendentes" e pode visualizar suas respostas a partir da página "Respondidos"