diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim
index 02b56a7..44f9465 100644
--- a/src/testdir/test_autocmd.vim
+++ b/src/testdir/test_autocmd.vim
@@ -1967,12 +1967,12 @@
 func Test_autocmd_bufreadpre()
   new
   let b:bufreadpre = 1
-  call append(0, range(100))
+  call append(0, range(1000))
   w! XAutocmdBufReadPre.txt
   autocmd BufReadPre <buffer> :let b:bufreadpre += 1
-  norm! 50gg
+  norm! 500gg
   sp
-  norm! 100gg
+  norm! 1000gg
   wincmd p
   let g:wsv1 = winsaveview()
   wincmd p
diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim
index 5cae272..f5e0e9b 100644
--- a/src/testdir/test_options.vim
+++ b/src/testdir/test_options.vim
@@ -396,8 +396,7 @@
 func Test_set_one_column()
   let out_mult = execute('set all')->split("\n")
   let out_one = execute('set! all')->split("\n")
-  " one column should be two to four times as many lines
-  call assert_inrange(len(out_mult) * 2, len(out_mult) * 4, len(out_one))
+  call assert_true(len(out_mult) < len(out_one))
 endfunc
 
 func Test_set_values()
diff --git a/src/testdir/test_termcodes.vim b/src/testdir/test_termcodes.vim
index f27648e..13770c6 100644
--- a/src/testdir/test_termcodes.vim
+++ b/src/testdir/test_termcodes.vim
@@ -758,16 +758,20 @@
   let row = &lines
 
   for ttymouse_val in g:Ttymouse_values + g:Ttymouse_dec
-    let msg = 'ttymouse=' .. ttymouse_val
-    exe 'set ttymouse=' .. ttymouse_val
+    " When 'ttymouse' is 'xterm2', row/col bigger than 223 are not supported.
+    if ttymouse_val !=# 'xterm2' || row <= 223
+      let msg = 'ttymouse=' .. ttymouse_val
+      exe 'set ttymouse=' .. ttymouse_val
 
-    call feedkeys(':"3456789'
-          \       .. MouseLeftClickCode(row, 7)
-          \       .. MouseLeftReleaseCode(row, 7) .. 'L'
-          \       .. MouseRightClickCode(row, 4)
-          \       .. MouseRightReleaseCode(row, 4) .. 'R'
-          \       .. "\<CR>", 'Lx!')
-    call assert_equal('"3R456L789', @:, msg)
+
+      call feedkeys(':"3456789'
+            \       .. MouseLeftClickCode(row, 7)
+            \       .. MouseLeftReleaseCode(row, 7) .. 'L'
+            \       .. MouseRightClickCode(row, 4)
+            \       .. MouseRightReleaseCode(row, 4) .. 'R'
+            \       .. "\<CR>", 'Lx!')
+      call assert_equal('"3R456L789', @:, msg)
+    endif
   endfor
 
   let &mouse = save_mouse
diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim
index f83ca51..6d7c786 100644
--- a/src/testdir/test_terminal.vim
+++ b/src/testdir/test_terminal.vim
@@ -673,7 +673,7 @@
     let len = 5000
   endif
 
-  for c in ['a','b','c','d','e','f','g','h','i','j','k']
+  for c in split('abcdefghijklmnopqrstuvwxyz', '\zs')
     call term_sendkeys(buf, 'echo ' . repeat(c, len) . "\<cr>")
   endfor
   call term_sendkeys(buf, "echo done\<cr>")
@@ -2495,7 +2495,7 @@
   func TermExit(...)
     call term_sendkeys(bufnr('#'), "exit\<CR>")
     call popup_close(win_getid())
-  endfu
+  endfunc
   call OpenTerms()
 
   call term_sendkeys(g:buf0, "exit\<CR>")
@@ -2503,4 +2503,3 @@
   exe g:buf0 .. 'bwipe!'
   set hidden&
 endfunc
-
diff --git a/src/testdir/test_window_cmd.vim b/src/testdir/test_window_cmd.vim
index 1a67666..040324d 100644
--- a/src/testdir/test_window_cmd.vim
+++ b/src/testdir/test_window_cmd.vim
@@ -1013,13 +1013,13 @@
   let dir = (a:dir_arg == 'v') ? 'vert ' : ''
 
   " Open as many windows as possible
-  for i in range(500)
+  while v:true
     try
       exe dir . 'new'
     catch /E36:/
       break
     endtry
-  endfor
+  endwhile
 
   call writefile(['first', 'second', 'third'], 'Xfile1')
   call writefile([], 'Xfile2')
